gitextract_ov1j6yo8/ ├── .devcontainer/ │ └── devcontainer.json ├── .dockerignore ├── .git-blame-ignore-revs ├── .github/ │ ├── FUNDING.yml │ ├── actions/ │ │ └── run_moto_server/ │ │ └── action.yml │ ├── dependabot.yml │ └── workflows/ │ ├── build.yml │ ├── codeql-analysis.yml │ ├── data-update_config-managed-rules.yml │ ├── data-update_ec2-instance-offerings.yml │ ├── data-update_ec2-instance-types.yml │ ├── data-update_emr_instance_types.yml │ ├── data-update_iam-managed-policies.yml │ ├── data-update_ssm-default-amis.yml │ ├── data-update_ssm-default-parameters.yml │ ├── data-update_ssm-optimized-amis.yml │ ├── dependency_test.yml │ ├── dockertests.yml │ ├── release.yml │ ├── release_dev.yml │ ├── test_cloudwatch.yml │ ├── test_outdated_versions.yml │ ├── test_sqs.yml │ ├── tests_cdk.yml │ ├── tests_cli.yml │ ├── tests_decoratormode.yml │ ├── tests_proxymode.yml │ ├── tests_real_aws.yml │ ├── tests_sdk_cpp.yml │ ├── tests_sdk_dotnet.yml │ ├── tests_sdk_go.yml │ ├── tests_sdk_java.yml │ ├── tests_sdk_js.yml │ ├── tests_sdk_ruby.yml │ ├── tests_sdk_sagemaker.yml │ ├── tests_servermode.yml │ ├── tests_terraform_examples.yml │ └── tests_without_docker.yml ├── .gitignore ├── .gitmodules ├── .readthedocs.yaml ├── AUTHORS.md ├── CHANGELOG.md ├── CLOUDFORMATION_COVERAGE.md ├── CODE_OF_CONDUCT.md ├── CONFIG_README.md ├── CONTRIBUTING.md ├── Dockerfile ├── IMPLEMENTATION_COVERAGE.md ├── ISSUE_TEMPLATE.md ├── LICENSE ├── MANIFEST.in ├── Makefile ├── README.md ├── codecov.yml ├── docs/ │ ├── Makefile │ ├── conf.py │ ├── docs/ │ │ ├── aws_config.rst │ │ ├── configuration/ │ │ │ ├── environment_variables.rst │ │ │ ├── index.rst │ │ │ ├── recorder/ │ │ │ │ └── index.rst │ │ │ └── state_transition/ │ │ │ ├── index.rst │ │ │ └── models.rst │ │ ├── contributing/ │ │ │ ├── architecture.rst │ │ │ ├── checklist.rst │ │ │ ├── development_tips/ │ │ │ │ ├── index.rst │ │ │ │ ├── new_state_transitions.rst │ │ │ │ ├── tests.rst │ │ │ │ ├── urls.rst │ │ │ │ └── utilities.rst │ │ │ ├── faq.rst │ │ │ ├── index.rst │ │ │ ├── installation.rst │ │ │ └── new_feature.rst │ │ ├── faq.rst │ │ ├── getting_started.rst │ │ ├── iam.rst │ │ ├── multi_account.rst │ │ ├── proxy_mode.rst │ │ ├── releases.rst │ │ ├── server_mode.rst │ │ └── services/ │ │ ├── account.rst │ │ ├── acm-pca.rst │ │ ├── acm.rst │ │ ├── amp.rst │ │ ├── apigateway.rst │ │ ├── apigatewaymanagementapi.rst │ │ ├── apigatewayv2.rst │ │ ├── appconfig.rst │ │ ├── application-autoscaling.rst │ │ ├── appmesh.rst │ │ ├── appsync.rst │ │ ├── athena.rst │ │ ├── autoscaling.rst │ │ ├── backup.rst │ │ ├── batch.rst │ │ ├── bedrock-agent.rst │ │ ├── bedrock.rst │ │ ├── budgets.rst │ │ ├── ce.rst │ │ ├── cf.rst │ │ ├── clouddirectory.rst │ │ ├── cloudformation.rst │ │ ├── cloudfront.rst │ │ ├── cloudhsmv2.rst │ │ ├── cloudtrail.rst │ │ ├── cloudwatch.rst │ │ ├── codebuild.rst │ │ ├── codecommit.rst │ │ ├── codedeploy.rst │ │ ├── codepipeline.rst │ │ ├── cognito-identity.rst │ │ ├── cognito-idp.rst │ │ ├── comprehend.rst │ │ ├── config.rst │ │ ├── connect.rst │ │ ├── connectcampaigns.rst │ │ ├── databrew.rst │ │ ├── datapipeline.rst │ │ ├── datasync.rst │ │ ├── dax.rst │ │ ├── directconnect.rst │ │ ├── dms.rst │ │ ├── ds.rst │ │ ├── dsql.rst │ │ ├── dynamodb.rst │ │ ├── dynamodbstreams.rst │ │ ├── ebs.rst │ │ ├── ec2-instance-connect.rst │ │ ├── ec2.rst │ │ ├── ecr.rst │ │ ├── ecs.rst │ │ ├── efs.rst │ │ ├── eks.rst │ │ ├── elasticache.rst │ │ ├── elasticbeanstalk.rst │ │ ├── elb.rst │ │ ├── elbv2.rst │ │ ├── emr-containers.rst │ │ ├── emr-serverless.rst │ │ ├── emr.rst │ │ ├── es.rst │ │ ├── events.rst │ │ ├── firehose.rst │ │ ├── forecast.rst │ │ ├── fsx.rst │ │ ├── glacier.rst │ │ ├── glue.rst │ │ ├── greengrass.rst │ │ ├── guardduty.rst │ │ ├── iam.rst │ │ ├── identitystore.rst │ │ ├── index.rst │ │ ├── inspector2.rst │ │ ├── iot-data.rst │ │ ├── iot.rst │ │ ├── ivs.rst │ │ ├── kafka.rst │ │ ├── kinesis-video-archived-media.rst │ │ ├── kinesis.rst │ │ ├── kinesisanalyticsv2.rst │ │ ├── kinesisvideo.rst │ │ ├── kms.rst │ │ ├── lakeformation.rst │ │ ├── lambda.rst │ │ ├── lexv2-models.rst │ │ ├── logs.rst │ │ ├── macie2.rst │ │ ├── managedblockchain.rst │ │ ├── mediaconnect.rst │ │ ├── medialive.rst │ │ ├── mediapackage.rst │ │ ├── mediapackagev2.rst │ │ ├── mediastore-data.rst │ │ ├── mediastore.rst │ │ ├── memorydb.rst │ │ ├── meteringmarketplace.rst │ │ ├── mq.rst │ │ ├── neptune.rst │ │ ├── network-firewall.rst │ │ ├── networkmanager.rst │ │ ├── opensearch.rst │ │ ├── opensearchserverless.rst │ │ ├── organizations.rst │ │ ├── osis.rst │ │ ├── panorama.rst │ │ ├── patching_other_services.rst │ │ ├── personalize.rst │ │ ├── pinpoint.rst │ │ ├── pipes.rst │ │ ├── polly.rst │ │ ├── quicksight.rst │ │ ├── ram.rst │ │ ├── rds-data.rst │ │ ├── rds.rst │ │ ├── redshift-data.rst │ │ ├── redshift.rst │ │ ├── rekognition.rst │ │ ├── resiliencehub.rst │ │ ├── resource-groups.rst │ │ ├── resourcegroupstaggingapi.rst │ │ ├── route53.rst │ │ ├── route53domains.rst │ │ ├── route53resolver.rst │ │ ├── s3.rst │ │ ├── s3control.rst │ │ ├── s3tables.rst │ │ ├── s3vectors.rst │ │ ├── sagemaker-metrics.rst │ │ ├── sagemaker-runtime.rst │ │ ├── sagemaker.rst │ │ ├── scheduler.rst │ │ ├── sdb.rst │ │ ├── secretsmanager.rst │ │ ├── securityhub.rst │ │ ├── service-quotas.rst │ │ ├── servicecatalog-appregistry.rst │ │ ├── servicecatalog.rst │ │ ├── servicediscovery.rst │ │ ├── ses.rst │ │ ├── sesv2.rst │ │ ├── shield.rst │ │ ├── signer.rst │ │ ├── sns.rst │ │ ├── sqs.rst │ │ ├── ssm.rst │ │ ├── sso-admin.rst │ │ ├── stepfunctions.rst │ │ ├── sts.rst │ │ ├── support.rst │ │ ├── swf.rst │ │ ├── synthetics.rst │ │ ├── textract.rst │ │ ├── timestream-influxdb.rst │ │ ├── timestream-query.rst │ │ ├── timestream-write.rst │ │ ├── transcribe.rst │ │ ├── transfer.rst │ │ ├── vpc-lattice.rst │ │ ├── wafv2.rst │ │ ├── workspaces-web.rst │ │ └── workspaces.rst │ ├── index.rst │ ├── make.bat │ └── requirements.txt ├── moto/ │ ├── __init__.py │ ├── account/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── acm/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── acmpca/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── amp/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── apigateway/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── integration_parsers/ │ │ │ ├── __init__.py │ │ │ ├── aws_parser.py │ │ │ ├── http_parser.py │ │ │ └── unknown_parser.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── apigatewaymanagementapi/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── apigatewayv2/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── appconfig/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── applicationautoscaling/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── appmesh/ │ │ ├── __init__.py │ │ ├── dataclasses/ │ │ │ ├── mesh.py │ │ │ ├── route.py │ │ │ ├── shared.py │ │ │ ├── virtual_node.py │ │ │ └── virtual_router.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils/ │ │ ├── common.py │ │ └── spec_parsing.py │ ├── appsync/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── athena/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── autoscaling/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── awslambda/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── policy.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── awslambda_simple/ │ │ ├── __init__.py │ │ ├── models.py │ │ └── responses.py │ ├── backend_index.py │ ├── backends.py │ ├── backup/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── batch/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── batch_simple/ │ │ ├── __init__.py │ │ ├── models.py │ │ └── responses.py │ ├── bedrock/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── bedrockagent/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── bedrockruntime/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── budgets/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── ce/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── clouddirectory/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── cloudformation/ │ │ ├── __init__.py │ │ ├── custom_model.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── parsing.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── cloudfront/ │ │ ├── 2020-05-31/ │ │ │ └── service-2.moto-extras.json │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── cloudhsmv2/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── cloudtrail/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── cloudwatch/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── metric_data_expression_parser.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── codebuild/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── codecommit/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── codedeploy/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── codepipeline/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── cognitoidentity/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── cognitoidp/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── resources/ │ │ │ ├── jwks-private.json │ │ │ └── jwks-public.json │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── comprehend/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── config/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── resources/ │ │ │ └── aws_managed_rules.json │ │ ├── responses.py │ │ └── urls.py │ ├── connect/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── connectcampaigns/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── core/ │ │ ├── __init__.py │ │ ├── _mock_architecture.md │ │ ├── authorization.py │ │ ├── base_backend.py │ │ ├── botocore_stubber.py │ │ ├── common_models.py │ │ ├── common_types.py │ │ ├── config.py │ │ ├── constants.py │ │ ├── custom_responses_mock.py │ │ ├── decorator.py │ │ ├── errors.py │ │ ├── exceptions.py │ │ ├── loaders.py │ │ ├── mime_types.py │ │ ├── model.py │ │ ├── model_instances.py │ │ ├── models.py │ │ ├── parse.py │ │ ├── request.py │ │ ├── responses.py │ │ ├── responses_custom_registry.py │ │ ├── serialize.py │ │ ├── types.py │ │ ├── utils.py │ │ └── versions.py │ ├── databrew/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── datapipeline/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── datasync/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── dax/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── directconnect/ │ │ ├── __init__.py │ │ ├── enums.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── dms/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── ds/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ ├── utils.py │ │ └── validations.py │ ├── dsql/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── dynamodb/ │ │ ├── __init__.py │ │ ├── comparisons.py │ │ ├── exceptions.py │ │ ├── limits.py │ │ ├── models/ │ │ │ ├── __init__.py │ │ │ ├── dynamo_type.py │ │ │ ├── table.py │ │ │ ├── table_export.py │ │ │ ├── table_import.py │ │ │ └── utilities.py │ │ ├── parsing/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── ast_nodes.py │ │ │ ├── executors.py │ │ │ ├── expressions.py │ │ │ ├── key_condition_expression.py │ │ │ ├── partiql.py │ │ │ ├── reserved_keywords.py │ │ │ ├── reserved_keywords.txt │ │ │ ├── tokens.py │ │ │ └── validators.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── dynamodb_v20111205/ │ │ ├── __init__.py │ │ ├── comparisons.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── dynamodbstreams/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── ebs/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── ec2/ │ │ ├── 2016-11-15/ │ │ │ └── service-2.moto-extras.json │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models/ │ │ │ ├── __init__.py │ │ │ ├── amis.py │ │ │ ├── availability_zones_and_regions.py │ │ │ ├── carrier_gateways.py │ │ │ ├── core.py │ │ │ ├── customer_gateways.py │ │ │ ├── dhcp_options.py │ │ │ ├── elastic_block_store.py │ │ │ ├── elastic_ip_addresses.py │ │ │ ├── elastic_network_interfaces.py │ │ │ ├── fleets.py │ │ │ ├── flow_logs.py │ │ │ ├── hosts.py │ │ │ ├── iam_instance_profile.py │ │ │ ├── instance_types.py │ │ │ ├── instances.py │ │ │ ├── internet_gateways.py │ │ │ ├── key_pairs.py │ │ │ ├── launch_templates.py │ │ │ ├── managed_prefixes.py │ │ │ ├── nat_gateways.py │ │ │ ├── network_acls.py │ │ │ ├── reserved_instances.py │ │ │ ├── route_tables.py │ │ │ ├── security_groups.py │ │ │ ├── spot_requests.py │ │ │ ├── subnets.py │ │ │ ├── tags.py │ │ │ ├── transit_gateway.py │ │ │ ├── transit_gateway_attachments.py │ │ │ ├── transit_gateway_route_tables.py │ │ │ ├── vpc_peering_connections.py │ │ │ ├── vpc_service_configuration.py │ │ │ ├── vpcs.py │ │ │ ├── vpn_connections.py │ │ │ ├── vpn_gateway.py │ │ │ └── windows.py │ │ ├── regions.py │ │ ├── resources/ │ │ │ ├── amis.json │ │ │ ├── ecs/ │ │ │ │ └── optimized_amis/ │ │ │ │ ├── af-south-1.json │ │ │ │ ├── ap-east-1.json │ │ │ │ ├── ap-northeast-1.json │ │ │ │ ├── ap-northeast-2.json │ │ │ │ ├── ap-northeast-3.json │ │ │ │ ├── ap-south-1.json │ │ │ │ ├── ap-south-2.json │ │ │ │ ├── ap-southeast-1.json │ │ │ │ ├── ap-southeast-2.json │ │ │ │ ├── ap-southeast-3.json │ │ │ │ ├── ap-southeast-4.json │ │ │ │ ├── ap-southeast-5.json │ │ │ │ ├── ca-central-1.json │ │ │ │ ├── ca-west-1.json │ │ │ │ ├── eu-central-1.json │ │ │ │ ├── eu-central-2.json │ │ │ │ ├── eu-north-1.json │ │ │ │ ├── eu-south-1.json │ │ │ │ ├── eu-south-2.json │ │ │ │ ├── eu-west-1.json │ │ │ │ ├── eu-west-2.json │ │ │ │ ├── eu-west-3.json │ │ │ │ ├── il-central-1.json │ │ │ │ ├── me-central-1.json │ │ │ │ ├── me-south-1.json │ │ │ │ ├── sa-east-1.json │ │ │ │ ├── us-east-1.json │ │ │ │ ├── us-east-2.json │ │ │ │ ├── us-west-1.json │ │ │ │ └── us-west-2.json │ │ │ ├── instance_type_offerings/ │ │ │ │ ├── availability-zone/ │ │ │ │ │ ├── af-south-1.json │ │ │ │ │ ├── ap-east-1.json │ │ │ │ │ ├── ap-northeast-1.json │ │ │ │ │ ├── ap-northeast-2.json │ │ │ │ │ ├── ap-northeast-3.json │ │ │ │ │ ├── ap-south-1.json │ │ │ │ │ ├── ap-south-2.json │ │ │ │ │ ├── ap-southeast-1.json │ │ │ │ │ ├── ap-southeast-2.json │ │ │ │ │ ├── ap-southeast-3.json │ │ │ │ │ ├── ap-southeast-4.json │ │ │ │ │ ├── ap-southeast-5.json │ │ │ │ │ ├── ca-central-1.json │ │ │ │ │ ├── ca-west-1.json │ │ │ │ │ ├── eu-central-1.json │ │ │ │ │ ├── eu-central-2.json │ │ │ │ │ ├── eu-north-1.json │ │ │ │ │ ├── eu-south-1.json │ │ │ │ │ ├── eu-south-2.json │ │ │ │ │ ├── eu-west-1.json │ │ │ │ │ ├── eu-west-2.json │ │ │ │ │ ├── eu-west-3.json │ │ │ │ │ ├── il-central-1.json │ │ │ │ │ ├── me-central-1.json │ │ │ │ │ ├── me-south-1.json │ │ │ │ │ ├── sa-east-1.json │ │ │ │ │ ├── us-east-1.json │ │ │ │ │ ├── us-east-2.json │ │ │ │ │ ├── us-west-1.json │ │ │ │ │ └── us-west-2.json │ │ │ │ ├── availability-zone-id/ │ │ │ │ │ ├── af-south-1.json │ │ │ │ │ ├── ap-east-1.json │ │ │ │ │ ├── ap-northeast-1.json │ │ │ │ │ ├── ap-northeast-2.json │ │ │ │ │ ├── ap-northeast-3.json │ │ │ │ │ ├── ap-south-1.json │ │ │ │ │ ├── ap-south-2.json │ │ │ │ │ ├── ap-southeast-1.json │ │ │ │ │ ├── ap-southeast-2.json │ │ │ │ │ ├── ap-southeast-3.json │ │ │ │ │ ├── ap-southeast-4.json │ │ │ │ │ ├── ap-southeast-5.json │ │ │ │ │ ├── ca-central-1.json │ │ │ │ │ ├── ca-west-1.json │ │ │ │ │ ├── eu-central-1.json │ │ │ │ │ ├── eu-central-2.json │ │ │ │ │ ├── eu-north-1.json │ │ │ │ │ ├── eu-south-1.json │ │ │ │ │ ├── eu-south-2.json │ │ │ │ │ ├── eu-west-1.json │ │ │ │ │ ├── eu-west-2.json │ │ │ │ │ ├── eu-west-3.json │ │ │ │ │ ├── il-central-1.json │ │ │ │ │ ├── me-central-1.json │ │ │ │ │ ├── me-south-1.json │ │ │ │ │ ├── sa-east-1.json │ │ │ │ │ ├── us-east-1.json │ │ │ │ │ ├── us-east-2.json │ │ │ │ │ ├── us-west-1.json │ │ │ │ │ └── us-west-2.json │ │ │ │ └── region/ │ │ │ │ ├── af-south-1.json │ │ │ │ ├── ap-east-1.json │ │ │ │ ├── ap-northeast-1.json │ │ │ │ ├── ap-northeast-2.json │ │ │ │ ├── ap-northeast-3.json │ │ │ │ ├── ap-south-1.json │ │ │ │ ├── ap-south-2.json │ │ │ │ ├── ap-southeast-1.json │ │ │ │ ├── ap-southeast-2.json │ │ │ │ ├── ap-southeast-3.json │ │ │ │ ├── ap-southeast-4.json │ │ │ │ ├── ap-southeast-5.json │ │ │ │ ├── ca-central-1.json │ │ │ │ ├── ca-west-1.json │ │ │ │ ├── eu-central-1.json │ │ │ │ ├── eu-central-2.json │ │ │ │ ├── eu-north-1.json │ │ │ │ ├── eu-south-1.json │ │ │ │ ├── eu-south-2.json │ │ │ │ ├── eu-west-1.json │ │ │ │ ├── eu-west-2.json │ │ │ │ ├── eu-west-3.json │ │ │ │ ├── il-central-1.json │ │ │ │ ├── me-central-1.json │ │ │ │ ├── me-south-1.json │ │ │ │ ├── sa-east-1.json │ │ │ │ ├── us-east-1.json │ │ │ │ ├── us-east-2.json │ │ │ │ ├── us-west-1.json │ │ │ │ └── us-west-2.json │ │ │ ├── instance_types.json │ │ │ └── latest_amis/ │ │ │ ├── af-south-1.json │ │ │ ├── ap-east-1.json │ │ │ ├── ap-northeast-1.json │ │ │ ├── ap-northeast-2.json │ │ │ ├── ap-northeast-3.json │ │ │ ├── ap-south-1.json │ │ │ ├── ap-south-2.json │ │ │ ├── ap-southeast-1.json │ │ │ ├── ap-southeast-2.json │ │ │ ├── ap-southeast-3.json │ │ │ ├── ap-southeast-4.json │ │ │ ├── ap-southeast-5.json │ │ │ ├── ca-central-1.json │ │ │ ├── ca-west-1.json │ │ │ ├── eu-central-1.json │ │ │ ├── eu-central-2.json │ │ │ ├── eu-north-1.json │ │ │ ├── eu-south-1.json │ │ │ ├── eu-south-2.json │ │ │ ├── eu-west-1.json │ │ │ ├── eu-west-2.json │ │ │ ├── eu-west-3.json │ │ │ ├── il-central-1.json │ │ │ ├── me-central-1.json │ │ │ ├── me-south-1.json │ │ │ ├── sa-east-1.json │ │ │ ├── us-east-1.json │ │ │ ├── us-east-2.json │ │ │ ├── us-west-1.json │ │ │ └── us-west-2.json │ │ ├── responses/ │ │ │ ├── __init__.py │ │ │ ├── _base_response.py │ │ │ ├── account_attributes.py │ │ │ ├── amis.py │ │ │ ├── availability_zones_and_regions.py │ │ │ ├── carrier_gateways.py │ │ │ ├── customer_gateways.py │ │ │ ├── dhcp_options.py │ │ │ ├── egress_only_internet_gateways.py │ │ │ ├── elastic_block_store.py │ │ │ ├── elastic_ip_addresses.py │ │ │ ├── elastic_network_interfaces.py │ │ │ ├── fleets.py │ │ │ ├── flow_logs.py │ │ │ ├── general.py │ │ │ ├── hosts.py │ │ │ ├── iam_instance_profiles.py │ │ │ ├── instances.py │ │ │ ├── internet_gateways.py │ │ │ ├── key_pairs.py │ │ │ ├── launch_templates.py │ │ │ ├── monitoring.py │ │ │ ├── nat_gateways.py │ │ │ ├── network_acls.py │ │ │ ├── reserved_instances.py │ │ │ ├── route_tables.py │ │ │ ├── security_groups.py │ │ │ ├── settings.py │ │ │ ├── spot_fleets.py │ │ │ ├── spot_instances.py │ │ │ ├── subnets.py │ │ │ ├── tags.py │ │ │ ├── transit_gateway_attachments.py │ │ │ ├── transit_gateway_route_tables.py │ │ │ ├── transit_gateways.py │ │ │ ├── virtual_private_gateways.py │ │ │ ├── vpc_peering_connections.py │ │ │ ├── vpc_service_configuration.py │ │ │ ├── vpcs.py │ │ │ ├── vpn_connections.py │ │ │ └── windows.py │ │ ├── urls.py │ │ └── utils.py │ ├── ec2instanceconnect/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── ecr/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── policy_validation.py │ │ ├── responses.py │ │ └── urls.py │ ├── ecs/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── efs/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── eks/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── elasticache/ │ │ ├── 2015-02-02/ │ │ │ └── paginators-1.moto-extras.json │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── elasticbeanstalk/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── elb/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── policies.py │ │ ├── responses.py │ │ └── urls.py │ ├── elbv2/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── ssl_policies.py │ │ ├── urls.py │ │ └── utils.py │ ├── emr/ │ │ ├── 2009-03-31/ │ │ │ └── paginators-1.moto-extras.json │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── resources/ │ │ │ ├── README.md │ │ │ ├── instance-types-emr-4.2.0.json │ │ │ ├── instance-types-emr-4.3.0.json │ │ │ ├── instance-types-emr-4.4.0.json │ │ │ ├── instance-types-emr-4.5.0.json │ │ │ ├── instance-types-emr-4.6.0.json │ │ │ ├── instance-types-emr-4.6.1.json │ │ │ ├── instance-types-emr-4.8.2.json │ │ │ ├── instance-types-emr-4.8.3.json │ │ │ ├── instance-types-emr-4.8.4.json │ │ │ ├── instance-types-emr-4.8.5.json │ │ │ ├── instance-types-emr-4.9.1.json │ │ │ ├── instance-types-emr-4.9.2.json │ │ │ ├── instance-types-emr-4.9.3.json │ │ │ ├── instance-types-emr-4.9.4.json │ │ │ ├── instance-types-emr-4.9.5.json │ │ │ ├── instance-types-emr-4.9.6.json │ │ │ ├── instance-types-emr-5.0.0.json │ │ │ ├── instance-types-emr-5.0.1.json │ │ │ ├── instance-types-emr-5.0.2.json │ │ │ ├── instance-types-emr-5.0.3.json │ │ │ ├── instance-types-emr-5.1.0.json │ │ │ ├── instance-types-emr-5.1.1.json │ │ │ ├── instance-types-emr-5.10.0.json │ │ │ ├── instance-types-emr-5.10.1.json │ │ │ ├── instance-types-emr-5.11.0.json │ │ │ ├── instance-types-emr-5.11.1.json │ │ │ ├── instance-types-emr-5.11.2.json │ │ │ ├── instance-types-emr-5.11.3.json │ │ │ ├── instance-types-emr-5.11.4.json │ │ │ ├── instance-types-emr-5.12.0.json │ │ │ ├── instance-types-emr-5.12.1.json │ │ │ ├── instance-types-emr-5.12.2.json │ │ │ ├── instance-types-emr-5.12.3.json │ │ │ ├── instance-types-emr-5.13.0.json │ │ │ ├── instance-types-emr-5.13.1.json │ │ │ ├── instance-types-emr-5.14.0.json │ │ │ ├── instance-types-emr-5.14.1.json │ │ │ ├── instance-types-emr-5.14.2.json │ │ │ ├── instance-types-emr-5.15.0.json │ │ │ ├── instance-types-emr-5.15.1.json │ │ │ ├── instance-types-emr-5.16.0.json │ │ │ ├── instance-types-emr-5.16.1.json │ │ │ ├── instance-types-emr-5.17.0.json │ │ │ ├── instance-types-emr-5.17.1.json │ │ │ ├── instance-types-emr-5.17.2.json │ │ │ ├── instance-types-emr-5.18.0.json │ │ │ ├── instance-types-emr-5.18.1.json │ │ │ ├── instance-types-emr-5.19.0.json │ │ │ ├── instance-types-emr-5.19.1.json │ │ │ ├── instance-types-emr-5.2.0.json │ │ │ ├── instance-types-emr-5.2.1.json │ │ │ ├── instance-types-emr-5.2.2.json │ │ │ ├── instance-types-emr-5.2.3.json │ │ │ ├── instance-types-emr-5.20.0.json │ │ │ ├── instance-types-emr-5.20.1.json │ │ │ ├── instance-types-emr-5.21.0.json │ │ │ ├── instance-types-emr-5.21.1.json │ │ │ ├── instance-types-emr-5.21.2.json │ │ │ ├── instance-types-emr-5.22.0.json │ │ │ ├── instance-types-emr-5.23.0.json │ │ │ ├── instance-types-emr-5.23.1.json │ │ │ ├── instance-types-emr-5.24.0.json │ │ │ ├── instance-types-emr-5.24.1.json │ │ │ ├── instance-types-emr-5.25.0.json │ │ │ ├── instance-types-emr-5.26.0.json │ │ │ ├── instance-types-emr-5.27.0.json │ │ │ ├── instance-types-emr-5.27.1.json │ │ │ ├── instance-types-emr-5.28.0.json │ │ │ ├── instance-types-emr-5.28.1.json │ │ │ ├── instance-types-emr-5.29.0.json │ │ │ ├── instance-types-emr-5.3.0.json │ │ │ ├── instance-types-emr-5.3.1.json │ │ │ ├── instance-types-emr-5.3.2.json │ │ │ ├── instance-types-emr-5.30.0-preview.json │ │ │ ├── instance-types-emr-5.30.0.json │ │ │ ├── instance-types-emr-5.30.1.json │ │ │ ├── instance-types-emr-5.30.2.json │ │ │ ├── instance-types-emr-5.31.0.json │ │ │ ├── instance-types-emr-5.31.1.json │ │ │ ├── instance-types-emr-5.32.0.json │ │ │ ├── instance-types-emr-5.32.1.json │ │ │ ├── instance-types-emr-5.33.0.json │ │ │ ├── instance-types-emr-5.33.1.json │ │ │ ├── instance-types-emr-5.34.0.json │ │ │ ├── instance-types-emr-5.35.0.json │ │ │ ├── instance-types-emr-5.36.0.json │ │ │ ├── instance-types-emr-5.36.1.json │ │ │ ├── instance-types-emr-5.36.2.json │ │ │ ├── instance-types-emr-5.4.0.json │ │ │ ├── instance-types-emr-5.4.1.json │ │ │ ├── instance-types-emr-5.5.0.json │ │ │ ├── instance-types-emr-5.5.1.json │ │ │ ├── instance-types-emr-5.5.2.json │ │ │ ├── instance-types-emr-5.5.3.json │ │ │ ├── instance-types-emr-5.5.4.json │ │ │ ├── instance-types-emr-5.6.0.json │ │ │ ├── instance-types-emr-5.6.1.json │ │ │ ├── instance-types-emr-5.7.0.json │ │ │ ├── instance-types-emr-5.7.1.json │ │ │ ├── instance-types-emr-5.8.0.json │ │ │ ├── instance-types-emr-5.8.1.json │ │ │ ├── instance-types-emr-5.8.2.json │ │ │ ├── instance-types-emr-5.8.3.json │ │ │ ├── instance-types-emr-5.9.0.json │ │ │ ├── instance-types-emr-5.9.1.json │ │ │ ├── instance-types-emr-6.0.0-beta.json │ │ │ ├── instance-types-emr-6.0.0-beta2.json │ │ │ ├── instance-types-emr-6.0.0.json │ │ │ ├── instance-types-emr-6.0.1.json │ │ │ ├── instance-types-emr-6.1.0.json │ │ │ ├── instance-types-emr-6.1.1.json │ │ │ ├── instance-types-emr-6.10.0.json │ │ │ ├── instance-types-emr-6.10.1.json │ │ │ ├── instance-types-emr-6.11.0.json │ │ │ ├── instance-types-emr-6.11.1.json │ │ │ ├── instance-types-emr-6.12.0.json │ │ │ ├── instance-types-emr-6.13.0.json │ │ │ ├── instance-types-emr-6.14.0.json │ │ │ ├── instance-types-emr-6.15.0.json │ │ │ ├── instance-types-emr-6.2.0.json │ │ │ ├── instance-types-emr-6.2.1.json │ │ │ ├── instance-types-emr-6.3.0.json │ │ │ ├── instance-types-emr-6.3.1.json │ │ │ ├── instance-types-emr-6.4.0.json │ │ │ ├── instance-types-emr-6.5.0.json │ │ │ ├── instance-types-emr-6.6.0.json │ │ │ ├── instance-types-emr-6.7.0.json │ │ │ ├── instance-types-emr-6.8.0.json │ │ │ ├── instance-types-emr-6.8.1.json │ │ │ ├── instance-types-emr-6.9.0.json │ │ │ ├── instance-types-emr-6.9.1.json │ │ │ ├── instance-types-emr-7.0.0.json │ │ │ ├── instance-types-emr-7.1.0.json │ │ │ ├── instance-types-emr-7.10.0.json │ │ │ ├── instance-types-emr-7.11.0.json │ │ │ ├── instance-types-emr-7.12.0.json │ │ │ ├── instance-types-emr-7.2.0.json │ │ │ ├── instance-types-emr-7.3.0.json │ │ │ ├── instance-types-emr-7.4.0.json │ │ │ ├── instance-types-emr-7.5.0.json │ │ │ ├── instance-types-emr-7.6.0.json │ │ │ ├── instance-types-emr-7.7.0.json │ │ │ ├── instance-types-emr-7.8.0.json │ │ │ ├── instance-types-emr-7.9.0.json │ │ │ ├── instance_types.json │ │ │ ├── release-labels-af-south-1.json │ │ │ ├── release-labels-ap-east-1.json │ │ │ ├── release-labels-ap-east-2.json │ │ │ ├── release-labels-ap-northeast-1.json │ │ │ ├── release-labels-ap-northeast-2.json │ │ │ ├── release-labels-ap-northeast-3.json │ │ │ ├── release-labels-ap-south-1.json │ │ │ ├── release-labels-ap-south-2.json │ │ │ ├── release-labels-ap-southeast-1.json │ │ │ ├── release-labels-ap-southeast-2.json │ │ │ ├── release-labels-ap-southeast-3.json │ │ │ ├── release-labels-ap-southeast-4.json │ │ │ ├── release-labels-ap-southeast-5.json │ │ │ ├── release-labels-ap-southeast-7.json │ │ │ ├── release-labels-ca-central-1.json │ │ │ ├── release-labels-ca-west-1.json │ │ │ ├── release-labels-eu-central-1.json │ │ │ ├── release-labels-eu-central-2.json │ │ │ ├── release-labels-eu-north-1.json │ │ │ ├── release-labels-eu-south-1.json │ │ │ ├── release-labels-eu-south-2.json │ │ │ ├── release-labels-eu-west-1.json │ │ │ ├── release-labels-eu-west-2.json │ │ │ ├── release-labels-eu-west-3.json │ │ │ ├── release-labels-il-central-1.json │ │ │ ├── release-labels-me-central-1.json │ │ │ ├── release-labels-me-south-1.json │ │ │ ├── release-labels-mx-central-1.json │ │ │ ├── release-labels-sa-east-1.json │ │ │ ├── release-labels-us-east-1.json │ │ │ ├── release-labels-us-east-2.json │ │ │ ├── release-labels-us-west-1.json │ │ │ └── release-labels-us-west-2.json │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── emrcontainers/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── emrserverless/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── es/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ └── urls.py │ ├── events/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── notifications.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── firehose/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── forecast/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── fsx/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── glacier/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── glue/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── glue_schema_registry_constants.py │ │ ├── glue_schema_registry_utils.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── greengrass/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── guardduty/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── iam/ │ │ ├── __init__.py │ │ ├── access_control.py │ │ ├── aws_managed_policies.py │ │ ├── config.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── policy_conditions.py │ │ ├── policy_validation.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── identitystore/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── inspector2/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── instance_metadata/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── iot/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── iotdata/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── ivs/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── kafka/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── kinesis/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── kinesisanalyticsv2/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── kinesisvideo/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── kinesisvideoarchivedmedia/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── kms/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── policy_validator.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── lakeformation/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── lexv2models/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── logs/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── logs_query/ │ │ │ ├── __init__.py │ │ │ └── query_parser.py │ │ ├── metric_filters.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── macie2/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── managedblockchain/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── mediaconnect/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── medialive/ │ │ ├── 2017-10-14/ │ │ │ └── paginators-1.moto-extras.json │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── mediapackage/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── mediapackagev2/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── mediastore/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── mediastoredata/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── memorydb/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── meteringmarketplace/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── moto_api/ │ │ ├── __init__.py │ │ └── _internal/ │ │ ├── __init__.py │ │ ├── managed_state_model.py │ │ ├── models.py │ │ ├── moto_random.py │ │ ├── recorder/ │ │ │ ├── __init__.py │ │ │ ├── models.py │ │ │ └── responses.py │ │ ├── responses.py │ │ ├── state_manager.py │ │ └── urls.py │ ├── moto_proxy/ │ │ ├── __init__.py │ │ ├── ca.crt │ │ ├── ca.key │ │ ├── cert.key │ │ ├── certificate_creator.py │ │ ├── certs/ │ │ │ ├── __init__.py │ │ │ └── req.conf.tmpl │ │ ├── proxy3.py │ │ ├── setup_https_intercept.sh │ │ └── utils.py │ ├── moto_server/ │ │ ├── templates/ │ │ │ ├── dashboard.html │ │ │ └── lib.js │ │ ├── threaded_moto_server.py │ │ ├── utilities.py │ │ └── werkzeug_app.py │ ├── mq/ │ │ ├── __init__.py │ │ ├── configuration.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── neptune/ │ │ └── README.md │ ├── networkfirewall/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── networkmanager/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── opensearch/ │ │ ├── __init__.py │ │ ├── data.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── opensearchserverless/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── organizations/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── osis/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── packages/ │ │ ├── __init__.py │ │ ├── boto/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ └── ec2/ │ │ │ ├── __init__.py │ │ │ ├── blockdevicemapping.py │ │ │ ├── ec2object.py │ │ │ ├── image.py │ │ │ ├── instance.py │ │ │ ├── instancetype.py │ │ │ └── tag.py │ │ └── cfnresponse/ │ │ ├── __init__.py │ │ └── cfnresponse.py │ ├── panorama/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── personalize/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── pinpoint/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── pipes/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── polly/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── resources.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── proxy.py │ ├── py.typed │ ├── quicksight/ │ │ ├── __init__.py │ │ ├── data_models.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── ram/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── rds/ │ │ ├── 2014-10-31/ │ │ │ └── paginators-1.moto-extras.json │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── resources/ │ │ │ ├── cluster_options/ │ │ │ │ ├── aurora-postgresql.json │ │ │ │ └── neptune.json │ │ │ └── option_group_options/ │ │ │ ├── db2-ae.json │ │ │ ├── db2-se.json │ │ │ ├── mariadb.json │ │ │ ├── mysql.json │ │ │ ├── oracle-ee-cdb.json │ │ │ ├── oracle-ee.json │ │ │ ├── oracle-se2-cdb.json │ │ │ ├── oracle-se2.json │ │ │ ├── postgres.json │ │ │ ├── sqlserver-ee.json │ │ │ ├── sqlserver-ex.json │ │ │ ├── sqlserver-se.json │ │ │ └── sqlserver-web.json │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── rdsdata/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── redshift/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── redshiftdata/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── rekognition/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── resiliencehub/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── resourcegroups/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── resourcegroupstaggingapi/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── route53/ │ │ ├── 2013-04-01/ │ │ │ └── service-2.moto-extras.json │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── route53domains/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── validators.py │ ├── route53resolver/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ ├── utils.py │ │ └── validations.py │ ├── s3/ │ │ ├── __init__.py │ │ ├── cloud_formation.py │ │ ├── config.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── notifications.py │ │ ├── responses.py │ │ ├── select_object_content.py │ │ ├── urls.py │ │ └── utils.py │ ├── s3bucket_path/ │ │ ├── __init__.py │ │ └── utils.py │ ├── s3control/ │ │ ├── __init__.py │ │ ├── config.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── s3tables/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── s3vectors/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── sagemaker/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ ├── utils.py │ │ └── validators.py │ ├── sagemakermetrics/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── sagemakerruntime/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── scheduler/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── sdb/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── secretsmanager/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── list_secrets/ │ │ │ ├── __init__.py │ │ │ └── filters.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── securityhub/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── server.py │ ├── servicecatalog/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── servicecatalogappregistry/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── servicediscovery/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── servicequotas/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── resources/ │ │ │ ├── __init__.py │ │ │ └── default_quotas/ │ │ │ ├── __init__.py │ │ │ └── vpc.py │ │ ├── responses.py │ │ └── urls.py │ ├── ses/ │ │ ├── 2010-12-01/ │ │ │ └── paginators-1.moto-extras.json │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── feedback.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── template.py │ │ ├── urls.py │ │ └── utils.py │ ├── sesv2/ │ │ ├── 2019-09-27/ │ │ │ └── service-2.moto-extras.json │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── settings.py │ ├── shield/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── signer/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── sns/ │ │ ├── __init__.py │ │ ├── config.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── sqs/ │ │ ├── 2012-11-05/ │ │ │ └── service-2.moto-extras.json │ │ ├── __init__.py │ │ ├── constants.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── ssm/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── resources/ │ │ │ ├── ami-amazon-linux-latest/ │ │ │ │ ├── af-south-1.json │ │ │ │ ├── ap-east-1.json │ │ │ │ ├── ap-northeast-1.json │ │ │ │ ├── ap-northeast-2.json │ │ │ │ ├── ap-northeast-3.json │ │ │ │ ├── ap-south-1.json │ │ │ │ ├── ap-south-2.json │ │ │ │ ├── ap-southeast-1.json │ │ │ │ ├── ap-southeast-2.json │ │ │ │ ├── ap-southeast-3.json │ │ │ │ ├── ap-southeast-4.json │ │ │ │ ├── ap-southeast-5.json │ │ │ │ ├── ca-central-1.json │ │ │ │ ├── ca-west-1.json │ │ │ │ ├── eu-central-1.json │ │ │ │ ├── eu-central-2.json │ │ │ │ ├── eu-north-1.json │ │ │ │ ├── eu-south-1.json │ │ │ │ ├── eu-south-2.json │ │ │ │ ├── eu-west-1.json │ │ │ │ ├── eu-west-2.json │ │ │ │ ├── eu-west-3.json │ │ │ │ ├── il-central-1.json │ │ │ │ ├── me-central-1.json │ │ │ │ ├── me-south-1.json │ │ │ │ ├── sa-east-1.json │ │ │ │ ├── us-east-1.json │ │ │ │ ├── us-east-2.json │ │ │ │ ├── us-west-1.json │ │ │ │ └── us-west-2.json │ │ │ ├── default_baselines.json │ │ │ ├── ecs/ │ │ │ │ └── optimized_amis/ │ │ │ │ ├── af-south-1.json │ │ │ │ ├── ap-east-1.json │ │ │ │ ├── ap-northeast-1.json │ │ │ │ ├── ap-northeast-2.json │ │ │ │ ├── ap-northeast-3.json │ │ │ │ ├── ap-south-1.json │ │ │ │ ├── ap-south-2.json │ │ │ │ ├── ap-southeast-1.json │ │ │ │ ├── ap-southeast-2.json │ │ │ │ ├── ap-southeast-3.json │ │ │ │ ├── ap-southeast-4.json │ │ │ │ ├── ap-southeast-5.json │ │ │ │ ├── ca-central-1.json │ │ │ │ ├── ca-west-1.json │ │ │ │ ├── eu-central-1.json │ │ │ │ ├── eu-central-2.json │ │ │ │ ├── eu-north-1.json │ │ │ │ ├── eu-south-1.json │ │ │ │ ├── eu-south-2.json │ │ │ │ ├── eu-west-1.json │ │ │ │ ├── eu-west-2.json │ │ │ │ ├── eu-west-3.json │ │ │ │ ├── il-central-1.json │ │ │ │ ├── me-central-1.json │ │ │ │ ├── me-south-1.json │ │ │ │ ├── sa-east-1.json │ │ │ │ ├── us-east-1.json │ │ │ │ ├── us-east-2.json │ │ │ │ ├── us-west-1.json │ │ │ │ └── us-west-2.json │ │ │ ├── regions.json │ │ │ └── services.json │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── ssoadmin/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── stepfunctions/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── parser/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── api.py │ │ │ ├── asl/ │ │ │ │ ├── __init__.py │ │ │ │ ├── antlr/ │ │ │ │ │ ├── ASLIntrinsicLexer.g4 │ │ │ │ │ ├── ASLIntrinsicParser.g4 │ │ │ │ │ ├── ASLLexer.g4 │ │ │ │ │ ├── ASLParser.g4 │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── runtime/ │ │ │ │ │ ├── ASLIntrinsicLexer.py │ │ │ │ │ ├── ASLIntrinsicParser.py │ │ │ │ │ ├── ASLIntrinsicParserListener.py │ │ │ │ │ ├── ASLIntrinsicParserVisitor.py │ │ │ │ │ ├── ASLLexer.py │ │ │ │ │ ├── ASLParser.py │ │ │ │ │ ├── ASLParserListener.py │ │ │ │ │ ├── ASLParserVisitor.py │ │ │ │ │ └── __init__.py │ │ │ │ ├── antlt4utils/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── antlr4utils.py │ │ │ │ ├── component/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── common/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── assign/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── assign_decl.py │ │ │ │ │ │ │ ├── assign_decl_binding.py │ │ │ │ │ │ │ ├── assign_template_binding.py │ │ │ │ │ │ │ ├── assign_template_value.py │ │ │ │ │ │ │ ├── assign_template_value_array.py │ │ │ │ │ │ │ ├── assign_template_value_object.py │ │ │ │ │ │ │ └── assign_template_value_terminal.py │ │ │ │ │ │ ├── catch/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── catch_decl.py │ │ │ │ │ │ │ ├── catch_outcome.py │ │ │ │ │ │ │ ├── catcher_decl.py │ │ │ │ │ │ │ ├── catcher_outcome.py │ │ │ │ │ │ │ └── catcher_props.py │ │ │ │ │ │ ├── comment.py │ │ │ │ │ │ ├── error_name/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── custom_error_name.py │ │ │ │ │ │ │ ├── error_equals_decl.py │ │ │ │ │ │ │ ├── error_name.py │ │ │ │ │ │ │ ├── failure_event.py │ │ │ │ │ │ │ ├── states_error_name.py │ │ │ │ │ │ │ └── states_error_name_type.py │ │ │ │ │ │ ├── flow/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── end.py │ │ │ │ │ │ │ ├── next.py │ │ │ │ │ │ │ └── start_at.py │ │ │ │ │ │ ├── jsonata/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── jsonata_template_binding.py │ │ │ │ │ │ │ ├── jsonata_template_value.py │ │ │ │ │ │ │ ├── jsonata_template_value_array.py │ │ │ │ │ │ │ ├── jsonata_template_value_object.py │ │ │ │ │ │ │ └── jsonata_template_value_terminal.py │ │ │ │ │ │ ├── outputdecl.py │ │ │ │ │ │ ├── parargs.py │ │ │ │ │ │ ├── path/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── input_path.py │ │ │ │ │ │ │ ├── items_path.py │ │ │ │ │ │ │ ├── output_path.py │ │ │ │ │ │ │ └── result_path.py │ │ │ │ │ │ ├── payload/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ └── payloadvalue/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── payload_value.py │ │ │ │ │ │ │ ├── payloadarr/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ └── payload_arr.py │ │ │ │ │ │ │ ├── payloadbinding/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ └── payload_binding.py │ │ │ │ │ │ │ ├── payloadtmpl/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ └── payload_tmpl.py │ │ │ │ │ │ │ └── payloadvaluelit/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── payload_value_bool.py │ │ │ │ │ │ │ ├── payload_value_float.py │ │ │ │ │ │ │ ├── payload_value_int.py │ │ │ │ │ │ │ ├── payload_value_lit.py │ │ │ │ │ │ │ ├── payload_value_null.py │ │ │ │ │ │ │ └── payload_value_str.py │ │ │ │ │ │ ├── query_language.py │ │ │ │ │ │ ├── result_selector.py │ │ │ │ │ │ ├── retry/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── backoff_rate_decl.py │ │ │ │ │ │ │ ├── interval_seconds_decl.py │ │ │ │ │ │ │ ├── jitter_strategy_decl.py │ │ │ │ │ │ │ ├── max_attempts_decl.py │ │ │ │ │ │ │ ├── max_delay_seconds_decl.py │ │ │ │ │ │ │ ├── retrier_decl.py │ │ │ │ │ │ │ ├── retrier_outcome.py │ │ │ │ │ │ │ ├── retrier_props.py │ │ │ │ │ │ │ ├── retry_decl.py │ │ │ │ │ │ │ └── retry_outcome.py │ │ │ │ │ │ ├── string/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ └── string_expression.py │ │ │ │ │ │ └── timeouts/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── heartbeat.py │ │ │ │ │ │ └── timeout.py │ │ │ │ │ ├── component.py │ │ │ │ │ ├── eval_component.py │ │ │ │ │ ├── intrinsic/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── argument/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ └── argument.py │ │ │ │ │ │ ├── component.py │ │ │ │ │ │ ├── function/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── function.py │ │ │ │ │ │ │ └── statesfunction/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── array/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ ├── array.py │ │ │ │ │ │ │ │ ├── array_contains.py │ │ │ │ │ │ │ │ ├── array_get_item.py │ │ │ │ │ │ │ │ ├── array_length.py │ │ │ │ │ │ │ │ ├── array_partition.py │ │ │ │ │ │ │ │ ├── array_range.py │ │ │ │ │ │ │ │ └── array_unique.py │ │ │ │ │ │ │ ├── encoding_decoding/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ ├── base_64_decode.py │ │ │ │ │ │ │ │ └── base_64_encode.py │ │ │ │ │ │ │ ├── factory.py │ │ │ │ │ │ │ ├── generic/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ └── string_format.py │ │ │ │ │ │ │ ├── hash_calculations/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ ├── hash_algorithm.py │ │ │ │ │ │ │ │ └── hash_func.py │ │ │ │ │ │ │ ├── json_manipulation/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ ├── json_merge.py │ │ │ │ │ │ │ │ ├── json_to_string.py │ │ │ │ │ │ │ │ └── string_to_json.py │ │ │ │ │ │ │ ├── math_operations/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ ├── math_add.py │ │ │ │ │ │ │ │ └── math_random.py │ │ │ │ │ │ │ ├── states_function.py │ │ │ │ │ │ │ ├── states_function_array.py │ │ │ │ │ │ │ ├── states_function_format.py │ │ │ │ │ │ │ ├── states_function_json_to_string.py │ │ │ │ │ │ │ ├── states_function_string_to_json.py │ │ │ │ │ │ │ ├── states_function_uuid.py │ │ │ │ │ │ │ ├── string_operations/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ └── string_split.py │ │ │ │ │ │ │ └── unique_id_generation/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ └── uuid.py │ │ │ │ │ │ ├── functionname/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── custom_function_name.py │ │ │ │ │ │ │ ├── function_name.py │ │ │ │ │ │ │ ├── state_function_name_types.py │ │ │ │ │ │ │ └── states_function_name.py │ │ │ │ │ │ ├── jsonata.py │ │ │ │ │ │ ├── member.py │ │ │ │ │ │ ├── member_access.py │ │ │ │ │ │ └── program.py │ │ │ │ │ ├── program/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── program.py │ │ │ │ │ │ ├── states.py │ │ │ │ │ │ └── version.py │ │ │ │ │ ├── state/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── choice/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── choice_rule.py │ │ │ │ │ │ │ ├── choices_decl.py │ │ │ │ │ │ │ ├── comparison/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ ├── comparison.py │ │ │ │ │ │ │ │ ├── comparison_func.py │ │ │ │ │ │ │ │ ├── comparison_operator_type.py │ │ │ │ │ │ │ │ ├── comparison_type.py │ │ │ │ │ │ │ │ ├── comparison_variable.py │ │ │ │ │ │ │ │ ├── operator/ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ ├── factory.py │ │ │ │ │ │ │ │ │ ├── implementations/ │ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ │ ├── boolean_equals.py │ │ │ │ │ │ │ │ │ │ ├── is_operator.py │ │ │ │ │ │ │ │ │ │ ├── numeric.py │ │ │ │ │ │ │ │ │ │ ├── string_operators.py │ │ │ │ │ │ │ │ │ │ └── timestamp_operators.py │ │ │ │ │ │ │ │ │ └── operator.py │ │ │ │ │ │ │ │ └── variable.py │ │ │ │ │ │ │ ├── default_decl.py │ │ │ │ │ │ │ └── state_choice.py │ │ │ │ │ │ ├── exec/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── execute_state.py │ │ │ │ │ │ │ ├── state_map/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ ├── execution_type.py │ │ │ │ │ │ │ │ ├── item_reader/ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ ├── eval/ │ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ │ ├── resource_eval.py │ │ │ │ │ │ │ │ │ │ ├── resource_eval_factory.py │ │ │ │ │ │ │ │ │ │ ├── resource_eval_s3.py │ │ │ │ │ │ │ │ │ │ └── resource_output_transformer/ │ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ │ ├── transformer.py │ │ │ │ │ │ │ │ │ │ ├── transformer_csv.py │ │ │ │ │ │ │ │ │ │ ├── transformer_factory.py │ │ │ │ │ │ │ │ │ │ └── transformer_json.py │ │ │ │ │ │ │ │ │ ├── item_reader_decl.py │ │ │ │ │ │ │ │ │ └── reader_config/ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ ├── csv_header_location.py │ │ │ │ │ │ │ │ │ ├── csv_headers.py │ │ │ │ │ │ │ │ │ ├── input_type.py │ │ │ │ │ │ │ │ │ ├── max_items_decl.py │ │ │ │ │ │ │ │ │ ├── reader_config_decl.py │ │ │ │ │ │ │ │ │ └── reader_config_props.py │ │ │ │ │ │ │ │ ├── item_selector.py │ │ │ │ │ │ │ │ ├── items/ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ └── items.py │ │ │ │ │ │ │ │ ├── iteration/ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ ├── distributed_iteration_component.py │ │ │ │ │ │ │ │ │ ├── inline_iteration_component.py │ │ │ │ │ │ │ │ │ ├── itemprocessor/ │ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ │ ├── distributed_item_processor.py │ │ │ │ │ │ │ │ │ │ ├── distributed_item_processor_worker.py │ │ │ │ │ │ │ │ │ │ ├── inline_item_processor.py │ │ │ │ │ │ │ │ │ │ ├── inline_item_processor_worker.py │ │ │ │ │ │ │ │ │ │ ├── item_processor_decl.py │ │ │ │ │ │ │ │ │ │ ├── item_processor_factory.py │ │ │ │ │ │ │ │ │ │ ├── map_run_record.py │ │ │ │ │ │ │ │ │ │ └── processor_config.py │ │ │ │ │ │ │ │ │ ├── iteration_component.py │ │ │ │ │ │ │ │ │ ├── iteration_declaration.py │ │ │ │ │ │ │ │ │ ├── iteration_worker.py │ │ │ │ │ │ │ │ │ ├── iterator/ │ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ │ ├── distributed_iterator.py │ │ │ │ │ │ │ │ │ │ ├── distributed_iterator_worker.py │ │ │ │ │ │ │ │ │ │ ├── inline_iterator.py │ │ │ │ │ │ │ │ │ │ ├── inline_iterator_worker.py │ │ │ │ │ │ │ │ │ │ ├── iterator_decl.py │ │ │ │ │ │ │ │ │ │ └── iterator_factory.py │ │ │ │ │ │ │ │ │ └── job.py │ │ │ │ │ │ │ │ ├── label.py │ │ │ │ │ │ │ │ ├── max_concurrency.py │ │ │ │ │ │ │ │ ├── mode.py │ │ │ │ │ │ │ │ ├── result_writer/ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ ├── resource_eval/ │ │ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ │ │ ├── resource_eval.py │ │ │ │ │ │ │ │ │ │ ├── resource_eval_factory.py │ │ │ │ │ │ │ │ │ │ └── resource_eval_s3.py │ │ │ │ │ │ │ │ │ └── result_writer_decl.py │ │ │ │ │ │ │ │ ├── state_map.py │ │ │ │ │ │ │ │ └── tolerated_failure.py │ │ │ │ │ │ │ ├── state_parallel/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ ├── branch_worker.py │ │ │ │ │ │ │ │ ├── branches_decl.py │ │ │ │ │ │ │ │ └── state_parallel.py │ │ │ │ │ │ │ └── state_task/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── credentials.py │ │ │ │ │ │ │ ├── lambda_eval_utils.py │ │ │ │ │ │ │ ├── mock_eval_utils.py │ │ │ │ │ │ │ ├── service/ │ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ │ ├── resource.py │ │ │ │ │ │ │ │ ├── state_task_service.py │ │ │ │ │ │ │ │ ├── state_task_service_api_gateway.py │ │ │ │ │ │ │ │ ├── state_task_service_aws_sdk.py │ │ │ │ │ │ │ │ ├── state_task_service_batch.py │ │ │ │ │ │ │ │ ├── state_task_service_callback.py │ │ │ │ │ │ │ │ ├── state_task_service_dynamodb.py │ │ │ │ │ │ │ │ ├── state_task_service_ecs.py │ │ │ │ │ │ │ │ ├── state_task_service_events.py │ │ │ │ │ │ │ │ ├── state_task_service_factory.py │ │ │ │ │ │ │ │ ├── state_task_service_glue.py │ │ │ │ │ │ │ │ ├── state_task_service_lambda.py │ │ │ │ │ │ │ │ ├── state_task_service_sfn.py │ │ │ │ │ │ │ │ ├── state_task_service_sns.py │ │ │ │ │ │ │ │ ├── state_task_service_sqs.py │ │ │ │ │ │ │ │ └── state_task_service_unsupported.py │ │ │ │ │ │ │ ├── state_task.py │ │ │ │ │ │ │ ├── state_task_activitiy.py │ │ │ │ │ │ │ ├── state_task_factory.py │ │ │ │ │ │ │ └── state_task_lambda.py │ │ │ │ │ │ ├── fail/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── cause_decl.py │ │ │ │ │ │ │ ├── error_decl.py │ │ │ │ │ │ │ └── state_fail.py │ │ │ │ │ │ ├── state.py │ │ │ │ │ │ ├── state_continue_with.py │ │ │ │ │ │ ├── state_pass/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ ├── result.py │ │ │ │ │ │ │ └── state_pass.py │ │ │ │ │ │ ├── state_props.py │ │ │ │ │ │ ├── state_succeed/ │ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ │ └── state_succeed.py │ │ │ │ │ │ ├── state_type.py │ │ │ │ │ │ └── wait/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── state_wait.py │ │ │ │ │ │ └── wait_function/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── seconds.py │ │ │ │ │ │ ├── seconds_path.py │ │ │ │ │ │ ├── timestamp.py │ │ │ │ │ │ └── wait_function.py │ │ │ │ │ └── test_state/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── program/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ └── test_state_program.py │ │ │ │ │ └── state/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── test_state_state_props.py │ │ │ │ ├── eval/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── callback/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ └── callback.py │ │ │ │ │ ├── contex_object.py │ │ │ │ │ ├── count_down_latch.py │ │ │ │ │ ├── environment.py │ │ │ │ │ ├── evaluation_details.py │ │ │ │ │ ├── event/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── event_detail.py │ │ │ │ │ │ ├── event_manager.py │ │ │ │ │ │ └── logging.py │ │ │ │ │ ├── program_state.py │ │ │ │ │ ├── states.py │ │ │ │ │ ├── test_state/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── environment.py │ │ │ │ │ │ └── program_state.py │ │ │ │ │ └── variable_store.py │ │ │ │ ├── jsonata/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── jsonata.py │ │ │ │ │ └── validations.py │ │ │ │ ├── parse/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── asl_parser.py │ │ │ │ │ ├── intrinsic/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── intrinsic_parser.py │ │ │ │ │ │ └── preprocessor.py │ │ │ │ │ ├── preprocessor.py │ │ │ │ │ ├── test_state/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── asl_parser.py │ │ │ │ │ │ └── preprocessor.py │ │ │ │ │ └── typed_props.py │ │ │ │ ├── static_analyser/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── express_static_analyser.py │ │ │ │ │ ├── intrinsic/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── intrinsic_static_analyser.py │ │ │ │ │ │ └── variable_names_intrinsic_static_analyser.py │ │ │ │ │ ├── static_analyser.py │ │ │ │ │ ├── test_state/ │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ └── test_state_analyser.py │ │ │ │ │ ├── usage_metrics_static_analyser.py │ │ │ │ │ └── variable_references_static_analyser.py │ │ │ │ └── utils/ │ │ │ │ ├── __init__.py │ │ │ │ ├── boto_client.py │ │ │ │ ├── encoding.py │ │ │ │ └── json_path.py │ │ │ ├── backend/ │ │ │ │ ├── __init__.py │ │ │ │ ├── activity.py │ │ │ │ ├── alias.py │ │ │ │ ├── execution.py │ │ │ │ ├── execution_worker.py │ │ │ │ ├── execution_worker_comm.py │ │ │ │ ├── state_machine.py │ │ │ │ ├── store.py │ │ │ │ └── test_state/ │ │ │ │ ├── __init__.py │ │ │ │ ├── execution.py │ │ │ │ └── execution_worker.py │ │ │ ├── mocking/ │ │ │ │ ├── __init__.py │ │ │ │ └── mock_config.py │ │ │ ├── models.py │ │ │ ├── packages.py │ │ │ ├── plugins.py │ │ │ ├── provider.py │ │ │ ├── quotas.py │ │ │ ├── resource_providers/ │ │ │ │ ├── __init__.py │ │ │ │ ├── aws_stepfunctions_activity.py │ │ │ │ ├── aws_stepfunctions_activity.schema.json │ │ │ │ ├── aws_stepfunctions_activity_plugin.py │ │ │ │ ├── aws_stepfunctions_statemachine.py │ │ │ │ ├── aws_stepfunctions_statemachine.schema.json │ │ │ │ └── aws_stepfunctions_statemachine_plugin.py │ │ │ ├── stepfunctions_utils.py │ │ │ └── utils.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── sts/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── support/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── resources/ │ │ │ └── describe_trusted_advisor_checks.json │ │ ├── responses.py │ │ └── urls.py │ ├── swf/ │ │ ├── __init__.py │ │ ├── constants.py │ │ ├── exceptions.py │ │ ├── models/ │ │ │ ├── __init__.py │ │ │ ├── activity_task.py │ │ │ ├── activity_type.py │ │ │ ├── decision_task.py │ │ │ ├── domain.py │ │ │ ├── generic_type.py │ │ │ ├── history_event.py │ │ │ ├── timeout.py │ │ │ ├── timer.py │ │ │ ├── workflow_execution.py │ │ │ └── workflow_type.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── synthetics/ │ │ ├── __init__.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── textract/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── timestreaminfluxdb/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── timestreamquery/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ └── urls.py │ ├── timestreamwrite/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── transcribe/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── transfer/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── types.py │ │ └── urls.py │ ├── utilities/ │ │ ├── __init__.py │ │ ├── arns.py │ │ ├── aws_headers.py │ │ ├── collections.py │ │ ├── constants.py │ │ ├── distutils_version.py │ │ ├── docker_utilities.py │ │ ├── id_generator.py │ │ ├── paginator.py │ │ ├── tagging_service.py │ │ ├── tokenizer.py │ │ └── utils.py │ ├── vpclattice/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── wafv2/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ ├── urls.py │ │ └── utils.py │ ├── workspaces/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ ├── workspacesweb/ │ │ ├── __init__.py │ │ ├── exceptions.py │ │ ├── models.py │ │ ├── responses.py │ │ └── urls.py │ └── xray/ │ ├── __init__.py │ ├── exceptions.py │ ├── mock_client.py │ ├── models.py │ ├── responses.py │ └── urls.py ├── other_langs/ │ ├── sqsSample.java │ ├── sqsSample.scala │ ├── terraform/ │ │ ├── account/ │ │ │ ├── contact.tf │ │ │ └── provider.tf │ │ ├── acm/ │ │ │ ├── acm.tf │ │ │ └── providers.tf │ │ ├── apigw2/ │ │ │ ├── apigateway.tf │ │ │ ├── data.tf │ │ │ └── provider.tf │ │ ├── autoscaling/ │ │ │ ├── data.tf │ │ │ ├── main.tf │ │ │ ├── provider.tf │ │ │ ├── security_groups.tf │ │ │ └── variables.tf │ │ ├── awslambda/ │ │ │ ├── event_invoke_config.tf │ │ │ ├── event_source_mapping.tf │ │ │ ├── event_source_mapping_common.tf │ │ │ ├── event_source_mapping_sqs.tf │ │ │ ├── event_source_mapping_sqs_fifo.tf │ │ │ ├── lambda.js │ │ │ └── provider.tf │ │ ├── backup/ │ │ │ ├── provider.tf │ │ │ └── resources.tf │ │ ├── cloudfront/ │ │ │ ├── cloudfront.tf │ │ │ └── providers.tf │ │ ├── codebuild/ │ │ │ ├── project.tf │ │ │ └── provider.tf │ │ ├── ds/ │ │ │ ├── provider.tf │ │ │ └── simple_ad.tf │ │ ├── dsql/ │ │ │ ├── cluster.tf │ │ │ └── provider.tf │ │ ├── ec2/ │ │ │ ├── ami.tf │ │ │ ├── instances.tf │ │ │ ├── provider.tf │ │ │ └── vpc.tf │ │ ├── ecr/ │ │ │ ├── provider.tf │ │ │ └── repository.tf │ │ ├── elb/ │ │ │ ├── listener.tf │ │ │ ├── load_balancer.tf │ │ │ └── provider.tf │ │ ├── firehose/ │ │ │ ├── main.tf │ │ │ └── provider.tf │ │ ├── iam/ │ │ │ ├── data.tf │ │ │ ├── iam.tf │ │ │ ├── output.tf │ │ │ ├── providers.tf │ │ │ └── sample-metadata.xml │ │ ├── mq/ │ │ │ ├── broker.tf │ │ │ └── provider.tf │ │ ├── pipes/ │ │ │ ├── pipe.tf │ │ │ └── provider.tf │ │ ├── rds/ │ │ │ ├── providers.tf │ │ │ ├── proxy.tf │ │ │ └── rds.tf │ │ ├── route53/ │ │ │ ├── providers.tf │ │ │ └── route53.tf │ │ ├── s3/ │ │ │ ├── bucket.tf │ │ │ ├── bucket_with_lifecycle_policy.tf │ │ │ ├── minimal_lifecycle_configuration.tf │ │ │ ├── provider.tf │ │ │ └── public_access_block.tf │ │ ├── sqs/ │ │ │ ├── provider.tf │ │ │ └── queue.tf │ │ └── wafv2/ │ │ ├── cognito.tf │ │ └── provider.tf │ ├── test.js │ ├── test.rb │ ├── tests_cdk/ │ │ └── s3_eventbridge/ │ │ ├── app.py │ │ ├── cdk.json │ │ └── requirements.txt │ ├── tests_cli/ │ │ └── test_cognity_identity.bats │ ├── tests_cpp/ │ │ ├── CMakeLists.txt │ │ ├── Makefile │ │ └── hello_s3.cpp │ ├── tests_dotnet/ │ │ ├── ebs/ │ │ │ ├── ElasticBlockStore.csproj │ │ │ ├── UnitTest.cs │ │ │ └── Usings.cs │ │ ├── s3/ │ │ │ ├── UnitTest.cs │ │ │ ├── Usings.cs │ │ │ └── s3.csproj │ │ └── sqs/ │ │ ├── UnitTest.cs │ │ ├── Usings.cs │ │ └── sqs.csproj │ ├── tests_go/ │ │ ├── dynamodbstreams_test.go │ │ ├── eks_test.go │ │ └── go.mod │ ├── tests_java/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ └── java/ │ │ │ └── moto/ │ │ │ └── tests/ │ │ │ ├── DependencyFactory.java │ │ │ └── DynamoLogic.java │ │ └── test/ │ │ └── java/ │ │ └── moto/ │ │ └── tests/ │ │ ├── CognitoIDPTest.java │ │ ├── DynamoTest.java │ │ ├── S3Test.java │ │ └── SESTest.java │ ├── tests_js/ │ │ ├── ec2.test.js │ │ ├── lambda.test.js │ │ ├── package.json │ │ ├── rds.test.js │ │ ├── s3.test.js │ │ └── sqs.test.js │ ├── tests_ruby/ │ │ ├── Gemfile │ │ └── test/ │ │ └── aws_sqs_test.rb │ └── tests_sagemaker_client/ │ ├── __init__.py │ ├── custom_script.py │ ├── test_model_training.py │ └── test_pipeline_session.py ├── pyproject.toml ├── requirements-dev.txt ├── requirements-tests.txt ├── requirements.txt ├── scripts/ │ ├── bump_version │ ├── ci_moto_server.sh │ ├── ci_wait_for_server.py │ ├── cloudformation_coverage.py │ ├── dependency_test.sh │ ├── ec2_get_instance_type_offerings.py │ ├── emr_get_releases.py │ ├── get_amis.py │ ├── get_instance_info.py │ ├── implementation_coverage.py │ ├── import_sfn_parser.sh │ ├── pull_down_aws_managed_rules.py │ ├── rds_describe_option_group_options.py │ ├── rds_get_orderable_db_cluster_options.py │ ├── scaffold.py │ ├── ssm_get_default_amis.py │ ├── ssm_get_default_params.py │ ├── ssm_get_default_patch_baselines.py │ ├── ssm_get_optimized_amis.py │ ├── template/ │ │ ├── lib/ │ │ │ ├── __init__.py.j2 │ │ │ ├── exceptions.py.j2 │ │ │ ├── models.py.j2 │ │ │ ├── responses.py.j2 │ │ │ └── urls.py.j2 │ │ └── test/ │ │ ├── __init__.py.j2 │ │ ├── test_server.py.j2 │ │ └── test_service.py.j2 │ ├── update_backend_index.py │ ├── update_managed_policies.py │ └── update_ssl_policies.py ├── setup.cfg ├── setup.py ├── tests/ │ ├── __init__.py │ ├── conftest.py │ ├── markers.py │ ├── test_account/ │ │ ├── __init__.py │ │ └── test_account_alternate_contacts.py │ ├── test_acm/ │ │ ├── __init__.py │ │ ├── resources/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── ca.key │ │ │ ├── ca.pem │ │ │ ├── ca.srl │ │ │ ├── star_moto_com-bad.pem │ │ │ ├── star_moto_com.csr │ │ │ ├── star_moto_com.key │ │ │ ├── star_moto_com.pem │ │ │ ├── star_moto_com_ec_prime256v1.key │ │ │ ├── star_moto_com_ec_prime256v1.pem │ │ │ ├── star_moto_com_ec_secp384r1.key │ │ │ ├── star_moto_com_ec_secp384r1.pem │ │ │ ├── star_moto_com_ec_secp521r1.key │ │ │ ├── star_moto_com_ec_secp521r1.pem │ │ │ ├── star_moto_com_rsa_1024.key │ │ │ ├── star_moto_com_rsa_1024.pem │ │ │ ├── star_moto_com_rsa_3072.key │ │ │ ├── star_moto_com_rsa_3072.pem │ │ │ ├── star_moto_com_rsa_4096.key │ │ │ └── star_moto_com_rsa_4096.pem │ │ └── test_acm.py │ ├── test_acmpca/ │ │ ├── __init__.py │ │ └── test_acmpca.py │ ├── test_amp/ │ │ ├── __init__.py │ │ ├── test_amp_logging_config.py │ │ ├── test_amp_rulegroupnamespaces.py │ │ └── test_amp_workspaces.py │ ├── test_apigateway/ │ │ ├── __init__.py │ │ ├── resources/ │ │ │ ├── petstore-swagger-v3.yaml │ │ │ ├── test_api.json │ │ │ ├── test_api.yaml │ │ │ ├── test_api_integration.yaml │ │ │ ├── test_api_invalid.json │ │ │ ├── test_api_invalid_version.json │ │ │ └── test_deep_api.yaml │ │ ├── test_apigateway.py │ │ ├── test_apigateway_cloudformation.py │ │ ├── test_apigateway_custom_ids.py │ │ ├── test_apigateway_deployments.py │ │ ├── test_apigateway_export.py │ │ ├── test_apigateway_gatewayresponses.py │ │ ├── test_apigateway_importrestapi.py │ │ ├── test_apigateway_integration.py │ │ ├── test_apigateway_putrestapi.py │ │ ├── test_apigateway_stage.py │ │ ├── test_apigateway_validators.py │ │ ├── test_apigateway_vpclink.py │ │ └── test_server.py │ ├── test_apigatewaymanagementapi/ │ │ ├── __init__.py │ │ └── test_apigatewaymanagementapi.py │ ├── test_apigatewayv2/ │ │ ├── __init__.py │ │ ├── test_apigatewayv2.py │ │ ├── test_apigatewayv2_authorizers.py │ │ ├── test_apigatewayv2_domains.py │ │ ├── test_apigatewayv2_integrationresponses.py │ │ ├── test_apigatewayv2_integrations.py │ │ ├── test_apigatewayv2_mappings.py │ │ ├── test_apigatewayv2_models.py │ │ ├── test_apigatewayv2_reimport.py │ │ ├── test_apigatewayv2_routes.py │ │ ├── test_apigatewayv2_stages.py │ │ ├── test_apigatewayv2_tags.py │ │ ├── test_apigatewayv2_vpclinks.py │ │ └── test_server.py │ ├── test_appconfig/ │ │ ├── __init__.py │ │ ├── test_appconfig_applications.py │ │ ├── test_appconfig_config_profiles.py │ │ └── test_appconfig_hosted_config_versions.py │ ├── test_applicationautoscaling/ │ │ ├── __init__.py │ │ ├── test_applicationautoscaling.py │ │ ├── test_applicationautoscaling_policies.py │ │ └── test_validation.py │ ├── test_appmesh/ │ │ ├── __init__.py │ │ ├── data.py │ │ └── test_appmesh.py │ ├── test_appsync/ │ │ ├── __init__.py │ │ ├── test_appsync.py │ │ ├── test_appsync_apikeys.py │ │ ├── test_appsync_integration.py │ │ ├── test_appsync_schema.py │ │ ├── test_appsync_tags.py │ │ └── test_server.py │ ├── test_athena/ │ │ ├── __init__.py │ │ ├── test_athena.py │ │ ├── test_athena_capacity_reservations.py │ │ ├── test_athena_execution_state.py │ │ ├── test_athena_integration.py │ │ ├── test_athena_resourcegroupstagging_integration.py │ │ └── test_athena_server_api.py │ ├── test_autoscaling/ │ │ ├── __init__.py │ │ ├── test_autoscaling.py │ │ ├── test_autoscaling_cloudformation.py │ │ ├── test_autoscaling_group_filters.py │ │ ├── test_autoscaling_groups.py │ │ ├── test_autoscaling_metrics.py │ │ ├── test_autoscaling_scheduledactions.py │ │ ├── test_autoscaling_tags.py │ │ ├── test_autoscaling_warm_pools.py │ │ ├── test_elb.py │ │ ├── test_elbv2.py │ │ ├── test_launch_configurations.py │ │ ├── test_policies.py │ │ ├── test_server.py │ │ └── utils.py │ ├── test_awslambda/ │ │ ├── __init__.py │ │ ├── test_awslambda_cloudformation.py │ │ ├── test_lambda.py │ │ ├── test_lambda_alias.py │ │ ├── test_lambda_concurrency.py │ │ ├── test_lambda_eventsourcemapping.py │ │ ├── test_lambda_function_urls.py │ │ ├── test_lambda_invoke.py │ │ ├── test_lambda_layers.py │ │ ├── test_lambda_layers_invoked.py │ │ ├── test_lambda_policy.py │ │ ├── test_lambda_tags.py │ │ ├── test_policy.py │ │ └── utilities.py │ ├── test_awslambda_simple/ │ │ ├── __init__.py │ │ └── test_lambda_simple.py │ ├── test_backup/ │ │ ├── __init__.py │ │ ├── test_backup.py │ │ └── test_backup_report_plans.py │ ├── test_batch/ │ │ ├── __init__.py │ │ ├── test_batch.py │ │ ├── test_batch_cloudformation.py │ │ ├── test_batch_compute_envs.py │ │ ├── test_batch_eks.py │ │ ├── test_batch_job_queue.py │ │ ├── test_batch_jobs.py │ │ ├── test_batch_scheduling_policy.py │ │ ├── test_batch_tags_job.py │ │ ├── test_batch_tags_job_definition.py │ │ ├── test_batch_tags_job_queue.py │ │ ├── test_batch_tags_scheduling_policy.py │ │ ├── test_batch_task_definition.py │ │ ├── test_server.py │ │ └── test_utils.py │ ├── test_batch_simple/ │ │ ├── __init__.py │ │ ├── test_batch_cloudformation.py │ │ ├── test_batch_compute_envs.py │ │ └── test_batch_jobs.py │ ├── test_bedrock/ │ │ ├── __init__.py │ │ └── test_bedrock.py │ ├── test_bedrockagent/ │ │ ├── __init__.py │ │ └── test_bedrockagent.py │ ├── test_bedrockruntime/ │ │ ├── __init__.py │ │ ├── test_bedrockruntime.py │ │ └── test_server.py │ ├── test_budgets/ │ │ ├── __init__.py │ │ ├── test_budgets.py │ │ ├── test_notifications.py │ │ └── test_server.py │ ├── test_ce/ │ │ ├── __init__.py │ │ ├── test_ce.py │ │ ├── test_ce_cost_and_usage.py │ │ └── test_ce_tags.py │ ├── test_clouddirectory/ │ │ ├── __init__.py │ │ ├── test_clouddirectory.py │ │ └── test_clouddirectory_integration.py │ ├── test_cloudformation/ │ │ ├── __init__.py │ │ ├── fixtures/ │ │ │ ├── __init__.py │ │ │ ├── custom_lambda.py │ │ │ ├── ec2_classic_eip.py │ │ │ ├── fn_join.py │ │ │ ├── kms_key.py │ │ │ ├── rds_mysql_with_db_parameter_group.py │ │ │ ├── rds_mysql_with_read_replica.py │ │ │ ├── redshift.py │ │ │ ├── route53_ec2_instance_with_public_ip.py │ │ │ ├── route53_health_check.py │ │ │ ├── route53_roundrobin.py │ │ │ ├── single_instance_with_ebs_volume.py │ │ │ ├── vpc_eip.py │ │ │ ├── vpc_eni.py │ │ │ └── vpc_single_instance_in_subnet.py │ │ ├── test_cloudformation_custom_resources.py │ │ ├── test_cloudformation_depends_on.py │ │ ├── test_cloudformation_multi_accounts.py │ │ ├── test_cloudformation_nested_stacks.py │ │ ├── test_cloudformation_stack_crud.py │ │ ├── test_cloudformation_stack_integration.py │ │ ├── test_cloudformation_stack_policies.py │ │ ├── test_conditions.py │ │ ├── test_import_value.py │ │ ├── test_server.py │ │ ├── test_stack_parsing.py │ │ ├── test_utilities.py │ │ └── test_validate.py │ ├── test_cloudfront/ │ │ ├── __init__.py │ │ ├── cloudfront_test_scaffolding.py │ │ ├── test_cloudfront.py │ │ ├── test_cloudfront_dist_tags.py │ │ ├── test_cloudfront_distributions.py │ │ ├── test_cloudfront_integration.py │ │ ├── test_cloudfront_invalidation.py │ │ ├── test_cloudfront_keys.py │ │ ├── test_cloudfront_oac.py │ │ └── test_server.py │ ├── test_cloudhsmv2/ │ │ ├── __init__.py │ │ └── test_cloudhsmv2.py │ ├── test_cloudtrail/ │ │ ├── __init__.py │ │ ├── test_cloudtrail.py │ │ ├── test_cloudtrail_eventselectors.py │ │ ├── test_cloudtrail_tags.py │ │ └── test_server.py │ ├── test_cloudwatch/ │ │ ├── __init__.py │ │ ├── test_cloudwatch.py │ │ ├── test_cloudwatch_alarms.py │ │ ├── test_cloudwatch_cloudformation.py │ │ ├── test_cloudwatch_dashboards.py │ │ ├── test_cloudwatch_expression_parser.py │ │ ├── test_cloudwatch_expressions.py │ │ ├── test_cloudwatch_insight_rules.py │ │ └── test_cloudwatch_tags.py │ ├── test_codebuild/ │ │ └── test_codebuild.py │ ├── test_codecommit/ │ │ └── test_codecommit.py │ ├── test_codedeploy/ │ │ ├── __init__.py │ │ └── test_codedeploy.py │ ├── test_codepipeline/ │ │ ├── __init__.py │ │ └── test_codepipeline.py │ ├── test_cognitoidentity/ │ │ ├── __init__.py │ │ ├── test_cognitoidentity.py │ │ └── test_server.py │ ├── test_cognitoidp/ │ │ ├── __init__.py │ │ ├── test_cognitoidp.py │ │ ├── test_cognitoidp_exceptions.py │ │ ├── test_cognitoidp_replay.py │ │ ├── test_cognitoidp_utils.py │ │ └── test_server.py │ ├── test_comprehend/ │ │ ├── __init__.py │ │ ├── test_comprehend.py │ │ ├── test_comprehend_integration.py │ │ └── test_comprehend_jobs.py │ ├── test_config/ │ │ ├── __init__.py │ │ ├── test_config.py │ │ ├── test_config_rules.py │ │ ├── test_config_rules_integration.py │ │ └── test_config_tags.py │ ├── test_connect/ │ │ ├── __init__.py │ │ └── test_connect.py │ ├── test_connectcampaigns/ │ │ ├── __init__.py │ │ └── test_connectcampaigns.py │ ├── test_core/ │ │ ├── __init__.py │ │ ├── protocols/ │ │ │ ├── input/ │ │ │ │ ├── ec2.json │ │ │ │ ├── json.json │ │ │ │ ├── query.json │ │ │ │ ├── rest-json.json │ │ │ │ └── rest-xml.json │ │ │ └── output/ │ │ │ ├── ec2.json │ │ │ ├── json.json │ │ │ ├── query-json.json │ │ │ ├── query.json │ │ │ ├── rest-json.json │ │ │ └── rest-xml.json │ │ ├── test_account_id_resolution.py │ │ ├── test_auth.py │ │ ├── test_auth_context_manager.py │ │ ├── test_backenddict.py │ │ ├── test_backends.py │ │ ├── test_botocore_stubber.py │ │ ├── test_config.py │ │ ├── test_decorator_calls.py │ │ ├── test_docker.py │ │ ├── test_ec2_vpc_endpoint_services.py │ │ ├── test_environ_patching.py │ │ ├── test_errors.py │ │ ├── test_exceptions.py │ │ ├── test_importorder.py │ │ ├── test_instance_metadata.py │ │ ├── test_mock_regions.py │ │ ├── test_moto_api.py │ │ ├── test_mypy.py │ │ ├── test_nested.py │ │ ├── test_protocols.py │ │ ├── test_proxy.py │ │ ├── test_request_mocking.py │ │ ├── test_request_passthrough.py │ │ ├── test_response_serialization.py │ │ ├── test_responses.py │ │ ├── test_responses_module.py │ │ ├── test_serialize.py │ │ ├── test_server.py │ │ ├── test_settings.py │ │ ├── test_url_base_regex.py │ │ ├── test_url_mapping.py │ │ ├── test_utils.py │ │ └── utilities.py │ ├── test_databrew/ │ │ ├── __init__.py │ │ ├── test_databrew_datasets.py │ │ ├── test_databrew_jobs.py │ │ ├── test_databrew_recipes.py │ │ └── test_databrew_rulesets.py │ ├── test_datapipeline/ │ │ ├── __init__.py │ │ ├── test_datapipeline.py │ │ ├── test_datapipeline_cloudformation.py │ │ └── test_server.py │ ├── test_datasync/ │ │ ├── __init__.py │ │ └── test_datasync.py │ ├── test_dax/ │ │ ├── __init__.py │ │ ├── test_dax.py │ │ └── test_server.py │ ├── test_directconnect/ │ │ ├── __init__.py │ │ ├── test_directconnect.py │ │ └── test_directconnect_integration.py │ ├── test_dms/ │ │ ├── __init__.py │ │ ├── test_dms.py │ │ ├── test_dms_connection_state.py │ │ ├── test_dms_integration.py │ │ └── test_dms_replication_instance_state.py │ ├── test_ds/ │ │ ├── __init__.py │ │ ├── test_ds.py │ │ ├── test_ds_ad_connect.py │ │ ├── test_ds_microsoft_ad.py │ │ ├── test_ds_simple_ad_directory.py │ │ └── test_ds_tags.py │ ├── test_dsql/ │ │ ├── __init__.py │ │ └── test_dsql.py │ ├── test_dynamodb/ │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── exceptions/ │ │ │ ├── __init__.py │ │ │ ├── test_dynamodb_exceptions.py │ │ │ ├── test_dynamodb_transactions.py │ │ │ └── test_key_length_exceptions.py │ │ ├── models/ │ │ │ ├── test_item.py │ │ │ ├── test_key_condition_expression_parser.py │ │ │ └── test_utilities.py │ │ ├── test_dynamodb.py │ │ ├── test_dynamodb_account_mode.py │ │ ├── test_dynamodb_batch_get_item.py │ │ ├── test_dynamodb_batch_write.py │ │ ├── test_dynamodb_cloudformation.py │ │ ├── test_dynamodb_condition_expressions.py │ │ ├── test_dynamodb_consumedcapacity.py │ │ ├── test_dynamodb_create_table.py │ │ ├── test_dynamodb_executor.py │ │ ├── test_dynamodb_export_table.py │ │ ├── test_dynamodb_expression_tokenizer.py │ │ ├── test_dynamodb_expressions.py │ │ ├── test_dynamodb_iam_permission.py │ │ ├── test_dynamodb_import_table.py │ │ ├── test_dynamodb_multi_attribute_gsi.py │ │ ├── test_dynamodb_query.py │ │ ├── test_dynamodb_resource_policy.py │ │ ├── test_dynamodb_scan.py │ │ ├── test_dynamodb_statements.py │ │ ├── test_dynamodb_table_with_range_key.py │ │ ├── test_dynamodb_table_without_range_key.py │ │ ├── test_dynamodb_transact.py │ │ ├── test_dynamodb_update_expressions.py │ │ ├── test_dynamodb_update_table.py │ │ ├── test_dynamodb_utils.py │ │ ├── test_dynamodb_validation.py │ │ └── test_server.py │ ├── test_dynamodb_v20111205/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ └── test_servermode.py │ ├── test_dynamodbstreams/ │ │ ├── __init__.py │ │ └── test_dynamodbstreams.py │ ├── test_ebs/ │ │ ├── __init__.py │ │ └── test_ebs.py │ ├── test_ec2/ │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── helpers.py │ │ ├── test_account_attributes.py │ │ ├── test_amis.py │ │ ├── test_availability_zones_and_regions.py │ │ ├── test_carrier_gateways.py │ │ ├── test_customer_gateways.py │ │ ├── test_dhcp_options.py │ │ ├── test_ec2_cloudformation.py │ │ ├── test_ec2_integration.py │ │ ├── test_egress_only_igw.py │ │ ├── test_elastic_block_store.py │ │ ├── test_elastic_ip_addresses.py │ │ ├── test_elastic_network_interfaces.py │ │ ├── test_fleets.py │ │ ├── test_flow_logs.py │ │ ├── test_flow_logs_cloudformation.py │ │ ├── test_general.py │ │ ├── test_hosts.py │ │ ├── test_iam_integration.py │ │ ├── test_instance_type_offerings.py │ │ ├── test_instance_types.py │ │ ├── test_instances.py │ │ ├── test_internet_gateways.py │ │ ├── test_key_pairs.py │ │ ├── test_launch_templates.py │ │ ├── test_launch_templates_cloudformation.py │ │ ├── test_nat_gateway.py │ │ ├── test_network_acls.py │ │ ├── test_prefix_lists.py │ │ ├── test_regions.py │ │ ├── test_reserved_instances_offerings.py │ │ ├── test_route_tables.py │ │ ├── test_security_groups.py │ │ ├── test_security_groups_cloudformation.py │ │ ├── test_server.py │ │ ├── test_settings.py │ │ ├── test_spot_fleet.py │ │ ├── test_spot_instances.py │ │ ├── test_subnets.py │ │ ├── test_tags.py │ │ ├── test_transit_gateway.py │ │ ├── test_transit_gateway_cloudformation.py │ │ ├── test_transit_gateway_peering_attachments.py │ │ ├── test_utils.py │ │ ├── test_virtual_private_gateways.py │ │ ├── test_vpc_endpoint_services_integration.py │ │ ├── test_vpc_peering.py │ │ ├── test_vpc_service_configuration_integration.py │ │ ├── test_vpcs.py │ │ ├── test_vpn_connections.py │ │ └── test_windows.py │ ├── test_ec2instanceconnect/ │ │ └── test_ec2instanceconnect.py │ ├── test_ecr/ │ │ ├── __init__.py │ │ ├── test_ecr.py │ │ ├── test_ecr_cloudformation.py │ │ ├── test_ecr_helpers.py │ │ ├── test_ecr_policy_validation.py │ │ ├── test_ecr_scan_results.py │ │ └── test_ecr_scanning_config.py │ ├── test_ecs/ │ │ ├── __init__.py │ │ ├── test_ecs.py │ │ ├── test_ecs_account_settings.py │ │ ├── test_ecs_capacity_provider.py │ │ ├── test_ecs_cloudformation.py │ │ ├── test_ecs_efs.py │ │ ├── test_ecs_task_def_tags.py │ │ ├── test_ecs_task_definitions.py │ │ ├── test_ecs_task_tags.py │ │ └── test_ecs_tasksets.py │ ├── test_efs/ │ │ ├── __init__.py │ │ ├── junk_drawer.py │ │ ├── test_access_point_tagging.py │ │ ├── test_access_points.py │ │ ├── test_efs_cloudformation.py │ │ ├── test_file_system.py │ │ ├── test_filesystem_policy.py │ │ ├── test_filesystem_tagging.py │ │ ├── test_lifecycle_config.py │ │ ├── test_mount_target.py │ │ ├── test_mount_target_security_groups.py │ │ └── test_server.py │ ├── test_eks/ │ │ ├── __init__.py │ │ ├── test_eks.py │ │ ├── test_eks_constants.py │ │ ├── test_eks_ec2.py │ │ ├── test_eks_utils.py │ │ └── test_server.py │ ├── test_elasticache/ │ │ ├── __init__.py │ │ ├── test_elasticache.py │ │ └── test_server.py │ ├── test_elasticbeanstalk/ │ │ ├── __init__.py │ │ ├── test_elasticbeanstalk.py │ │ └── test_server.py │ ├── test_elb/ │ │ ├── __init__.py │ │ ├── test_elb.py │ │ ├── test_elb_availabilityzones.py │ │ ├── test_elb_cloudformation.py │ │ ├── test_elb_policies.py │ │ ├── test_elb_subnets.py │ │ └── test_server.py │ ├── test_elbv2/ │ │ ├── __init__.py │ │ ├── test_elbv2.py │ │ ├── test_elbv2_cloudformation.py │ │ ├── test_elbv2_integration.py │ │ ├── test_elbv2_listener_attributes.py │ │ ├── test_elbv2_listener_rule_tags.py │ │ ├── test_elbv2_listener_rules.py │ │ ├── test_elbv2_listener_tags.py │ │ ├── test_elbv2_set_subnets.py │ │ ├── test_elbv2_target_groups.py │ │ ├── test_elbv2_target_health.py │ │ └── test_server.py │ ├── test_emr/ │ │ ├── __init__.py │ │ ├── test_emr.py │ │ ├── test_emr_boto3.py │ │ ├── test_emr_cloudformation.py │ │ ├── test_emr_instance_types.py │ │ ├── test_emr_integration.py │ │ ├── test_server.py │ │ └── test_utils.py │ ├── test_emrcontainers/ │ │ ├── __init__.py │ │ ├── test_emrcontainers.py │ │ └── test_server.py │ ├── test_emrserverless/ │ │ ├── __init__.py │ │ ├── test_emrserverless.py │ │ └── test_server.py │ ├── test_es/ │ │ ├── __init__.py │ │ ├── test_domain_tags.py │ │ ├── test_es.py │ │ └── test_server.py │ ├── test_events/ │ │ ├── __init__.py │ │ ├── test_event_pattern.py │ │ ├── test_events.py │ │ ├── test_events_cloudformation.py │ │ ├── test_events_http_integration.py │ │ ├── test_events_integration.py │ │ ├── test_events_lambdatriggers_integration.py │ │ ├── test_events_partners_integration.py │ │ └── test_events_sfn_integration.py │ ├── test_firehose/ │ │ ├── __init__.py │ │ ├── test_firehose.py │ │ ├── test_firehose_destination_types.py │ │ ├── test_firehose_encryption.py │ │ ├── test_firehose_put.py │ │ ├── test_firehose_tags.py │ │ └── test_http_destinations.py │ ├── test_forecast/ │ │ ├── __init__.py │ │ └── test_forecast.py │ ├── test_fsx/ │ │ ├── __init__.py │ │ ├── test_fsx.py │ │ └── test_fsx_integration.py │ ├── test_glacier/ │ │ ├── __init__.py │ │ ├── test_glacier_archives.py │ │ ├── test_glacier_jobs.py │ │ ├── test_glacier_vaults.py │ │ └── test_server.py │ ├── test_glue/ │ │ ├── __init__.py │ │ ├── fixtures/ │ │ │ ├── __init__.py │ │ │ ├── datacatalog.py │ │ │ └── schema_registry.py │ │ ├── helpers.py │ │ ├── test_datacatalog.py │ │ ├── test_glue.py │ │ ├── test_glue_job_runs.py │ │ ├── test_partition_filter.py │ │ ├── test_schema_registry.py │ │ └── test_workflows.py │ ├── test_greengrass/ │ │ ├── __init__.py │ │ ├── test_greengrass_core.py │ │ ├── test_greengrass_deployment.py │ │ ├── test_greengrass_device.py │ │ ├── test_greengrass_functions.py │ │ ├── test_greengrass_groups.py │ │ ├── test_greengrass_resource.py │ │ └── test_greengrass_subscriptions.py │ ├── test_guardduty/ │ │ ├── __init__.py │ │ ├── test_guardduty.py │ │ ├── test_guardduty_filters.py │ │ ├── test_guardduty_organization.py │ │ └── test_server.py │ ├── test_iam/ │ │ ├── __init__.py │ │ ├── test_iam.py │ │ ├── test_iam_access_integration.py │ │ ├── test_iam_account_aliases.py │ │ ├── test_iam_cloudformation.py │ │ ├── test_iam_groups.py │ │ ├── test_iam_oidc.py │ │ ├── test_iam_password_last_used.py │ │ ├── test_iam_policies.py │ │ ├── test_iam_resets.py │ │ ├── test_iam_response_attributes.py │ │ ├── test_iam_server_certificates.py │ │ ├── test_iam_signing_certificates.py │ │ └── test_server.py │ ├── test_identitystore/ │ │ ├── __init__.py │ │ └── test_identitystore.py │ ├── test_inspector2/ │ │ ├── __init__.py │ │ ├── test_inspector2.py │ │ ├── test_inspector2_admin_accounts.py │ │ ├── test_inspector2_enable.py │ │ ├── test_inspector2_findings.py │ │ ├── test_inspector2_members.py │ │ ├── test_inspector2_organization.py │ │ └── test_inspector2_tags.py │ ├── test_iot/ │ │ ├── __init__.py │ │ ├── test_iot.py │ │ ├── test_iot_billing_groups.py │ │ ├── test_iot_ca_certificates.py │ │ ├── test_iot_certificates.py │ │ ├── test_iot_cloudformation.py │ │ ├── test_iot_deprecate_thing_type.py │ │ ├── test_iot_domain_configuration.py │ │ ├── test_iot_indexing_configuration.py │ │ ├── test_iot_integration.py │ │ ├── test_iot_job_executions.py │ │ ├── test_iot_job_templates.py │ │ ├── test_iot_jobs.py │ │ ├── test_iot_policies.py │ │ ├── test_iot_rolealias.py │ │ ├── test_iot_search.py │ │ ├── test_iot_thing_groups.py │ │ ├── test_iot_thing_types.py │ │ ├── test_iot_things.py │ │ ├── test_iot_topic_rules.py │ │ └── test_server.py │ ├── test_iotdata/ │ │ ├── __init__.py │ │ ├── test_iotdata.py │ │ └── test_server.py │ ├── test_ivs/ │ │ ├── __init__.py │ │ └── test_ivs.py │ ├── test_kafka/ │ │ ├── __init__.py │ │ └── test_kafka.py │ ├── test_kinesis/ │ │ ├── __init__.py │ │ ├── test_kinesis.py │ │ ├── test_kinesis_boto3.py │ │ ├── test_kinesis_cloudformation.py │ │ ├── test_kinesis_encryption.py │ │ ├── test_kinesis_monitoring.py │ │ ├── test_kinesis_resource_policy.py │ │ ├── test_kinesis_stream_consumers.py │ │ ├── test_kinesis_stream_limits.py │ │ └── test_server.py │ ├── test_kinesisanalyticsv2/ │ │ ├── __init__.py │ │ ├── test_kinesisanalyticsv2.py │ │ └── test_kinesisanalyticsv2_integration.py │ ├── test_kinesisvideo/ │ │ ├── __init__.py │ │ ├── test_kinesisvideo.py │ │ └── test_server.py │ ├── test_kinesisvideoarchivedmedia/ │ │ ├── __init__.py │ │ ├── test_kinesisvideoarchivedmedia.py │ │ └── test_server.py │ ├── test_kms/ │ │ ├── __init__.py │ │ ├── test_kms.py │ │ ├── test_kms_cloudformation.py │ │ ├── test_kms_encrypt.py │ │ ├── test_kms_grants.py │ │ ├── test_kms_key_rotation.py │ │ ├── test_kms_mac.py │ │ ├── test_kms_policy_enforcement.py │ │ ├── test_model.py │ │ ├── test_server.py │ │ └── test_utils.py │ ├── test_lakeformation/ │ │ ├── __init__.py │ │ ├── test_lakeformation.py │ │ ├── test_permission.py │ │ └── test_resource_tags_integration.py │ ├── test_lexv2models/ │ │ ├── __init__.py │ │ └── test_lexv2models.py │ ├── test_logs/ │ │ ├── __init__.py │ │ ├── test_export_tasks.py │ │ ├── test_integration.py │ │ ├── test_logs.py │ │ ├── test_logs_cloudformation.py │ │ ├── test_logs_filter_log_events.py │ │ ├── test_logs_metric_filters.py │ │ ├── test_logs_query/ │ │ │ ├── test_boto3.py │ │ │ ├── test_query.py │ │ │ └── test_query_parser.py │ │ ├── test_logs_tags.py │ │ └── test_models.py │ ├── test_macie/ │ │ ├── __init__.py │ │ └── test_macie.py │ ├── test_managedblockchain/ │ │ ├── __init__.py │ │ ├── helpers.py │ │ ├── test_managedblockchain_invitations.py │ │ ├── test_managedblockchain_members.py │ │ ├── test_managedblockchain_networks.py │ │ ├── test_managedblockchain_nodes.py │ │ ├── test_managedblockchain_proposals.py │ │ └── test_managedblockchain_proposalvotes.py │ ├── test_mediaconnect/ │ │ ├── __init__.py │ │ ├── test_mediaconnect.py │ │ └── test_server.py │ ├── test_medialive/ │ │ ├── __init__.py │ │ ├── test_medialive.py │ │ └── test_server.py │ ├── test_mediapackage/ │ │ ├── __init__.py │ │ ├── test_mediapackage.py │ │ └── test_server.py │ ├── test_mediapackagev2/ │ │ ├── __init__.py │ │ ├── test_interaction_mediapackage_v1_and_v2.py │ │ └── test_mediapackagev2.py │ ├── test_mediastore/ │ │ ├── __init__.py │ │ ├── test_mediastore.py │ │ └── test_server.py │ ├── test_mediastoredata/ │ │ ├── __init__.py │ │ ├── test_mediastoredata.py │ │ └── test_server.py │ ├── test_memorydb/ │ │ ├── __init__.py │ │ └── test_memorydb.py │ ├── test_meteringmarketplace/ │ │ └── test_meteringmarketplace.py │ ├── test_moto_api/ │ │ ├── __init__.py │ │ ├── mock_random/ │ │ │ └── test_mock_random.py │ │ ├── recorder/ │ │ │ ├── __init__.py │ │ │ └── test_recorder.py │ │ ├── seeder/ │ │ │ ├── __init__.py │ │ │ └── test_seeder.py │ │ └── state_manager/ │ │ ├── __init__.py │ │ ├── servermode/ │ │ │ ├── test_inmemory_server.py │ │ │ └── test_state_manager.py │ │ ├── test_batch_integration.py │ │ ├── test_managed_state_model.py │ │ └── test_state_manager.py │ ├── test_mq/ │ │ ├── __init__.py │ │ ├── test_mq.py │ │ ├── test_mq_configuration.py │ │ ├── test_mq_tags.py │ │ ├── test_mq_users.py │ │ └── test_server.py │ ├── test_neptune/ │ │ ├── __init__.py │ │ ├── test_cluster_options.py │ │ ├── test_cluster_tags.py │ │ ├── test_clusters.py │ │ └── test_global_clusters.py │ ├── test_networkfirewall/ │ │ ├── __init__.py │ │ └── test_networkfirewall.py │ ├── test_networkmanager/ │ │ ├── __init__.py │ │ ├── test_networkmanager.py │ │ └── test_server.py │ ├── test_opensearch/ │ │ ├── __init__.py │ │ ├── test_domain_tags.py │ │ └── test_opensearch.py │ ├── test_opensearchserverless/ │ │ ├── __init__.py │ │ └── test_opensearchserverless.py │ ├── test_organizations/ │ │ ├── __init__.py │ │ ├── organizations_test_utils.py │ │ └── test_organizations.py │ ├── test_osis/ │ │ ├── __init__.py │ │ ├── test_osis.py │ │ └── test_server.py │ ├── test_panorama/ │ │ ├── __init__.py │ │ ├── test_application_instance.py │ │ ├── test_nodes.py │ │ ├── test_panorama_device.py │ │ └── test_server.py │ ├── test_personalize/ │ │ ├── __init__.py │ │ └── test_personalize_schema.py │ ├── test_pinpoint/ │ │ ├── __init__.py │ │ ├── test_pinpoint.py │ │ ├── test_pinpoint_application_tags.py │ │ └── test_pinpoint_event_stream.py │ ├── test_pipes/ │ │ ├── __init__.py │ │ └── test_pipes.py │ ├── test_polly/ │ │ ├── __init__.py │ │ ├── test_polly.py │ │ └── test_server.py │ ├── test_quicksight/ │ │ ├── __init__.py │ │ ├── test_quicksight.py │ │ ├── test_quicksight_dashboard.py │ │ ├── test_quicksight_data_source.py │ │ ├── test_quicksight_datasets.py │ │ ├── test_quicksight_groups.py │ │ ├── test_quicksight_tagging.py │ │ └── test_quicksight_users.py │ ├── test_ram/ │ │ ├── test_ram.py │ │ └── test_ram_utils.py │ ├── test_rds/ │ │ ├── __init__.py │ │ ├── test_db_cluster_param_group.py │ │ ├── test_db_cluster_params.py │ │ ├── test_db_shard_group.py │ │ ├── test_filters.py │ │ ├── test_global_clusters.py │ │ ├── test_integrations.py │ │ ├── test_rds.py │ │ ├── test_rds_blue_green_deployment.py │ │ ├── test_rds_cloudformation.py │ │ ├── test_rds_clusters.py │ │ ├── test_rds_clusters_with_instances.py │ │ ├── test_rds_event_subscriptions.py │ │ ├── test_rds_export_tasks.py │ │ ├── test_rds_proxy.py │ │ ├── test_rds_proxy_target_groups.py │ │ ├── test_server.py │ │ └── test_utils.py │ ├── test_rdsdata/ │ │ ├── __init__.py │ │ └── test_rdsdata.py │ ├── test_redshift/ │ │ ├── __init__.py │ │ ├── test_redshift.py │ │ ├── test_redshift_cloudformation.py │ │ └── test_server.py │ ├── test_redshiftdata/ │ │ ├── __init__.py │ │ ├── test_redshiftdata.py │ │ ├── test_redshiftdata_constants.py │ │ └── test_server.py │ ├── test_rekognition/ │ │ ├── __init__.py │ │ └── test_rekognition.py │ ├── test_resiliencehub/ │ │ ├── __init__.py │ │ ├── test_resiliencehub.py │ │ ├── test_resiliencyhub_resources.py │ │ └── test_resiliencyhub_tagging.py │ ├── test_resourcegroups/ │ │ ├── __init__.py │ │ └── test_resourcegroups.py │ ├── test_resourcegroupstaggingapi/ │ │ ├── __init__.py │ │ ├── test_resourcegroupstagging_dynamodb.py │ │ ├── test_resourcegroupstagging_firehose.py │ │ ├── test_resourcegroupstagging_glue.py │ │ ├── test_resourcegroupstagging_logs.py │ │ ├── test_resourcegroupstagging_rds.py │ │ ├── test_resourcegroupstaggingapi.py │ │ ├── test_resourcegroupstaggingapi_kms.py │ │ ├── test_resourcegroupstaggingapi_workspaces.py │ │ ├── test_resourcegroupstaggingapi_workspacesweb.py │ │ └── test_server.py │ ├── test_route53/ │ │ ├── __init__.py │ │ ├── test_change_set_model.py │ │ ├── test_route53.py │ │ ├── test_route53_cloudformation.py │ │ ├── test_route53_delegationsets.py │ │ ├── test_route53_healthchecks.py │ │ ├── test_route53_hosted_zone_ids.py │ │ ├── test_route53_query_logging_config.py │ │ ├── test_route53_vpcs.py │ │ └── test_server.py │ ├── test_route53domains/ │ │ ├── __init__.py │ │ └── test_route53domains_domain.py │ ├── test_route53resolver/ │ │ ├── __init__.py │ │ ├── test_route53resolver.py │ │ ├── test_route53resolver_dnssec_config.py │ │ ├── test_route53resolver_endpoint.py │ │ ├── test_route53resolver_rule.py │ │ ├── test_route53resolver_rule_associations.py │ │ └── test_route53resolver_tags.py │ ├── test_s3/ │ │ ├── __init__.py │ │ ├── test_multiple_accounts_server.py │ │ ├── test_s3.py │ │ ├── test_s3_acl.py │ │ ├── test_s3_auth.py │ │ ├── test_s3_bucket_policy.py │ │ ├── test_s3_classdecorator.py │ │ ├── test_s3_cloudformation.py │ │ ├── test_s3_conditionals.py │ │ ├── test_s3_config.py │ │ ├── test_s3_content_encoding.py │ │ ├── test_s3_copyobject.py │ │ ├── test_s3_cross_account.py │ │ ├── test_s3_custom_endpoint.py │ │ ├── test_s3_encryption.py │ │ ├── test_s3_eventbridge_integration.py │ │ ├── test_s3_file_handles.py │ │ ├── test_s3_lambda_integration.py │ │ ├── test_s3_lifecycle.py │ │ ├── test_s3_list_object_versions.py │ │ ├── test_s3_list_objects.py │ │ ├── test_s3_locales.py │ │ ├── test_s3_lock.py │ │ ├── test_s3_logging.py │ │ ├── test_s3_metadata.py │ │ ├── test_s3_multipart.py │ │ ├── test_s3_notifications.py │ │ ├── test_s3_object_attributes.py │ │ ├── test_s3_ownership.py │ │ ├── test_s3_replication.py │ │ ├── test_s3_response_headers.py │ │ ├── test_s3_select.py │ │ ├── test_s3_storageclass.py │ │ ├── test_s3_tagging.py │ │ ├── test_s3_utils.py │ │ └── test_server.py │ ├── test_s3bucket_path/ │ │ ├── __init__.py │ │ ├── test_s3bucket_path_utils.py │ │ └── test_server.py │ ├── test_s3control/ │ │ ├── __init__.py │ │ ├── test_multi_region_access_points.py │ │ ├── test_s3control.py │ │ ├── test_s3control_access_points.py │ │ ├── test_s3control_accesspoint_policy.py │ │ ├── test_s3control_config_integration.py │ │ ├── test_s3control_s3.py │ │ └── test_s3control_tagging.py │ ├── test_s3tables/ │ │ ├── __init__.py │ │ ├── test_s3tables.py │ │ └── test_server.py │ ├── test_s3vectors/ │ │ ├── __init__.py │ │ ├── test_s3vector_buckets.py │ │ ├── test_s3vector_indexes.py │ │ ├── test_s3vector_policies.py │ │ └── test_s3vector_vectors.py │ ├── test_sagemaker/ │ │ ├── __init__.py │ │ ├── cloudformation_test_configs.py │ │ ├── test_sagemaker_automljobs.py │ │ ├── test_sagemaker_cloudformation.py │ │ ├── test_sagemaker_cluster.py │ │ ├── test_sagemaker_compilation_jobs.py │ │ ├── test_sagemaker_data_quality_jobs_definitions.py │ │ ├── test_sagemaker_domains.py │ │ ├── test_sagemaker_endpoint.py │ │ ├── test_sagemaker_experiment.py │ │ ├── test_sagemaker_feature_groups.py │ │ ├── test_sagemaker_hyper_parameter_tuning_job.py │ │ ├── test_sagemaker_model_bias_job_definitions.py │ │ ├── test_sagemaker_model_cards.py │ │ ├── test_sagemaker_model_expainability.py │ │ ├── test_sagemaker_model_package_groups.py │ │ ├── test_sagemaker_model_packages.py │ │ ├── test_sagemaker_model_quality.py │ │ ├── test_sagemaker_models.py │ │ ├── test_sagemaker_notebooks.py │ │ ├── test_sagemaker_pipeline.py │ │ ├── test_sagemaker_processing.py │ │ ├── test_sagemaker_search.py │ │ ├── test_sagemaker_training.py │ │ ├── test_sagemaker_transform.py │ │ ├── test_sagemaker_trial.py │ │ └── test_sagemaker_trial_component.py │ ├── test_sagemakermetrics/ │ │ ├── __init__.py │ │ ├── test_sagemakermetrics.py │ │ └── test_server.py │ ├── test_sagemakerruntime/ │ │ ├── __init__.py │ │ └── test_sagemakerruntime.py │ ├── test_scheduler/ │ │ ├── __init__.py │ │ ├── test_schedule_groups.py │ │ ├── test_scheduler.py │ │ ├── test_scheduler_tags.py │ │ └── test_server.py │ ├── test_sdb/ │ │ ├── __init__.py │ │ ├── test_sdb_attributes.py │ │ ├── test_sdb_domains.py │ │ └── test_server.py │ ├── test_secretsmanager/ │ │ ├── __init__.py │ │ ├── test_list_secrets.py │ │ ├── test_policy.py │ │ ├── test_rotate_simple_lambda.py │ │ ├── test_secrets_duplication.py │ │ ├── test_secretsmanager.py │ │ └── test_server.py │ ├── test_securityhub/ │ │ ├── __init__.py │ │ └── test_securityhub.py │ ├── test_servicecatalog/ │ │ ├── __init__.py │ │ ├── test_servicecatalog.py │ │ └── test_servicecatalog_integration.py │ ├── test_servicecatalogappregistry/ │ │ ├── __init__.py │ │ ├── test_servicecatalogappregistry.py │ │ └── test_servicecatalogappregistry_cloudformation.py │ ├── test_servicediscovery/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ ├── test_servicediscovery_httpnamespaces.py │ │ ├── test_servicediscovery_instance.py │ │ ├── test_servicediscovery_operations.py │ │ ├── test_servicediscovery_service.py │ │ └── test_servicediscovery_tags.py │ ├── test_servicequotas/ │ │ ├── __init__.py │ │ └── test_servicequotas.py │ ├── test_ses/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ ├── test_ses.py │ │ ├── test_ses_sns.py │ │ ├── test_ses_utils.py │ │ └── test_templating.py │ ├── test_sesv2/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ └── test_sesv2.py │ ├── test_shield/ │ │ ├── __init__.py │ │ └── test_shield.py │ ├── test_signer/ │ │ ├── __init__.py │ │ ├── test_signing_platforms.py │ │ └── test_signing_profiles.py │ ├── test_sns/ │ │ ├── __init__.py │ │ ├── test_application.py │ │ ├── test_http_message_verification.py │ │ ├── test_publish_batch.py │ │ ├── test_publishing.py │ │ ├── test_server.py │ │ ├── test_sns_cloudformation.py │ │ ├── test_subscriptions.py │ │ ├── test_topics.py │ │ └── test_utils.py │ ├── test_special_cases/ │ │ └── test_custom_amis.py │ ├── test_sqs/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ ├── test_sqs.py │ │ ├── test_sqs_authentication.py │ │ ├── test_sqs_cloudformation.py │ │ ├── test_sqs_integration.py │ │ ├── test_sqs_message_attributes.py │ │ └── test_sqs_multiaccount.py │ ├── test_ssm/ │ │ ├── __init__.py │ │ ├── test_ssm.py │ │ ├── test_ssm_cloudformation.py │ │ ├── test_ssm_default_amis.py │ │ ├── test_ssm_defaults.py │ │ ├── test_ssm_doc_permissions.py │ │ ├── test_ssm_docs.py │ │ ├── test_ssm_ec2_integration.py │ │ ├── test_ssm_ecs_images.py │ │ ├── test_ssm_maintenance_windows.py │ │ ├── test_ssm_parameterstore.py │ │ ├── test_ssm_parameterstore_cloudformation.py │ │ ├── test_ssm_patch_baseline.py │ │ ├── test_ssm_patch_group.py │ │ ├── test_ssm_secretsmanager.py │ │ ├── test_ssm_utils.py │ │ └── test_templates/ │ │ └── good.yaml │ ├── test_ssoadmin/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ ├── test_ssoadmin.py │ │ ├── test_ssoadmin_instances.py │ │ ├── test_ssoadmin_permission_sets.py │ │ └── test_ssoadmin_policies.py │ ├── test_stepfunctions/ │ │ ├── __init__.py │ │ ├── parser/ │ │ │ ├── __init__.py │ │ │ ├── templates/ │ │ │ │ ├── __init__.py │ │ │ │ ├── choice_state_singleton.json │ │ │ │ ├── comments/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── comments_as_per_docs.py │ │ │ │ │ └── comments_in_parameters.json │ │ │ │ ├── credentials.json │ │ │ │ ├── failure.json │ │ │ │ ├── json_regex.json │ │ │ │ ├── map_item_reader.json │ │ │ │ ├── map_item_reader_with_header.json │ │ │ │ ├── parallel_fail.json │ │ │ │ ├── parallel_states.json │ │ │ │ ├── parallel_states_catch.json │ │ │ │ ├── parallel_states_order.json │ │ │ │ ├── retry.py │ │ │ │ ├── retry_jitter_none.py │ │ │ │ ├── services/ │ │ │ │ │ ├── dynamodb_invalid_task_token.json │ │ │ │ │ ├── dynamodb_put_delete_item.json │ │ │ │ │ ├── dynamodb_put_item.json │ │ │ │ │ ├── dynamodb_task_token.json │ │ │ │ │ ├── dynamodb_zero_retry.json │ │ │ │ │ ├── sns_publish.json │ │ │ │ │ └── sqs_heartbeat.json │ │ │ │ ├── state_with_role.json │ │ │ │ ├── templates.py │ │ │ │ ├── wait_1.json │ │ │ │ └── wait_15.json │ │ │ ├── test_choice_state.py │ │ │ ├── test_comments.py │ │ │ ├── test_map_item.py │ │ │ ├── test_parallel_states.py │ │ │ ├── test_stepfunctions.py │ │ │ ├── test_stepfunctions_dynamodb_integration.py │ │ │ ├── test_stepfunctions_idempotency.py │ │ │ ├── test_stepfunctions_lambda_integration.py │ │ │ ├── test_stepfunctions_lambda_retry_integration.py │ │ │ ├── test_stepfunctions_sns_integration.py │ │ │ └── test_stepfunctions_sqs_integration.py │ │ ├── test_stepfunctions.py │ │ ├── test_stepfunctions_cloudformation.py │ │ ├── test_stepfunctions_idempotency.py │ │ └── test_stepfunctions_versions.py │ ├── test_sts/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ ├── test_sts.py │ │ └── test_sts_integration.py │ ├── test_support/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ └── test_support.py │ ├── test_swf/ │ │ ├── __init__.py │ │ ├── models/ │ │ │ ├── __init__.py │ │ │ ├── test_activity_task.py │ │ │ ├── test_decision_task.py │ │ │ ├── test_domain.py │ │ │ ├── test_generic_type.py │ │ │ ├── test_history_event.py │ │ │ ├── test_timeout.py │ │ │ ├── test_timer.py │ │ │ └── test_workflow_execution.py │ │ ├── responses/ │ │ │ ├── __init__.py │ │ │ ├── test_activity_tasks.py │ │ │ ├── test_activity_types.py │ │ │ ├── test_decision_tasks.py │ │ │ ├── test_domains.py │ │ │ ├── test_timeouts.py │ │ │ ├── test_workflow_executions.py │ │ │ └── test_workflow_types.py │ │ ├── test_exceptions.py │ │ ├── test_utils.py │ │ └── utils.py │ ├── test_synthetics/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ └── test_synthetics.py │ ├── test_textract/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ └── test_textract.py │ ├── test_timestreaminfluxdb/ │ │ ├── __init__.py │ │ ├── test_timestreaminfluxdb.py │ │ └── test_timestreaminfluxdb_tagging.py │ ├── test_timestreamquery/ │ │ ├── __init__.py │ │ └── test_timestreamquery.py │ ├── test_timestreamwrite/ │ │ ├── __init__.py │ │ ├── test_server.py │ │ ├── test_timestreamwrite_database.py │ │ ├── test_timestreamwrite_table.py │ │ └── test_timestreamwrite_tagging.py │ ├── test_transcribe/ │ │ ├── __init__.py │ │ └── test_transcribe.py │ ├── test_transfer/ │ │ ├── __init__.py │ │ └── test_transfer.py │ ├── test_utilities/ │ │ ├── test_docker_utilities.py │ │ ├── test_id_generator.py │ │ ├── test_paginator.py │ │ ├── test_tagging_service.py │ │ ├── test_threaded_server.py │ │ └── test_utils.py │ ├── test_vpclattice/ │ │ ├── __init__.py │ │ ├── test_vpclattice.py │ │ └── test_vpclattice_integration.py │ ├── test_wafv2/ │ │ ├── __init__.py │ │ ├── test_helper_functions.py │ │ ├── test_regex_pattern_sets.py │ │ ├── test_server.py │ │ ├── test_utils.py │ │ ├── test_wafv2.py │ │ ├── test_wafv2_integration.py │ │ ├── test_wafv2_logging_configuration.py │ │ ├── test_wafv2_rules.py │ │ └── test_wafv2_tags.py │ ├── test_workspaces/ │ │ ├── __init__.py │ │ └── test_workspaces.py │ ├── test_workspacesweb/ │ │ ├── __init__.py │ │ └── test_workspacesweb.py │ └── test_xray/ │ ├── __init__.py │ ├── test_xray.py │ └── test_xray_client.py └── update_version_from_git.py