#
tokens: 71279/50000 1/104 files (page 97/104)
lines: off (toggle) GitHub
raw markdown copy
This is page 97 of 104. Use http://codebase.md/versuscontrol/ai-infrastructure-agent?lines=false&page={x} to view the full context.

# Directory Structure

```
├── .github
│   └── workflows
│       ├── dev-ci.yaml
│       └── release.yaml
├── .gitignore
├── cmd
│   ├── server
│   │   └── main.go
│   ├── tmp
│   │   └── main.go
│   └── web
│       └── main.go
├── config.bedrock.yaml.example
├── config.gemini.yaml.example
├── config.openai.yaml.example
├── config.yaml
├── Dockerfile
├── docs
│   ├── _sidebar.md
│   ├── .nojekyll
│   ├── api-key-setup
│   │   ├── aws-bedrock-nova-setup.md
│   │   ├── gemini-api-setup.md
│   │   └── openai-api-setup.md
│   ├── architecture
│   │   └── architecture-overview.md
│   ├── CNAME
│   ├── docs.html
│   ├── examples
│   │   ├── working-with-ec2-instance.md
│   │   └── working-with-vpc.md
│   ├── getting-started.md
│   ├── images
│   │   ├── advanced-demo.svg
│   │   ├── ai-analysis-planning.png
│   │   ├── ai-execute-planning.png
│   │   ├── ai-infrastructure-agent.svg
│   │   ├── ai-infrastructure-state.png
│   │   ├── core-components.svg
│   │   ├── ec2-00.png
│   │   ├── ec2-01.png
│   │   ├── ec2-02.png
│   │   ├── ec2-03.png
│   │   ├── ec2-04.png
│   │   ├── ec2-05.png
│   │   ├── ec2-06.png
│   │   ├── ec2-07.png
│   │   ├── simple-demo.svg
│   │   ├── vpc-00.png
│   │   ├── vpc-01.png
│   │   ├── vpc-02.png
│   │   ├── vpc-03.png
│   │   ├── vpc-04.png
│   │   ├── vpc-05.png
│   │   ├── vpc-06.png
│   │   ├── vpc-07.png
│   │   ├── vpc-08.png
│   │   ├── vpc-09.png
│   │   ├── vpc-10.png
│   │   ├── vpc-11.png
│   │   ├── vpc-architecture.svg
│   │   └── web-dashboard.svg
│   ├── index.html
│   ├── installation.md
│   └── README.md
├── go.mod
├── go.sum
├── internal
│   ├── config
│   │   ├── config.go
│   │   └── loader.go
│   └── logging
│       └── logger.go
├── LICENSE
├── pkg
│   ├── adapters
│   │   ├── alb.go
│   │   ├── asg.go
│   │   ├── base.go
│   │   ├── ec2.go
│   │   ├── keypair.go
│   │   ├── rds.go
│   │   ├── security_group.go
│   │   └── vpc.go
│   ├── agent
│   │   ├── agent_capability_extractors.go
│   │   ├── agent_dependency_resolver.go
│   │   ├── agent_factory.go
│   │   ├── agent_json_processing.go
│   │   ├── agent_plan_executor.go
│   │   ├── agent_request_processor.go
│   │   ├── agent_resource_correlation.go
│   │   ├── agent_test.go
│   │   ├── agent_utility_helpers.go
│   │   ├── mcp_communication.go
│   │   ├── mocks
│   │   │   ├── aws_client_mock.go
│   │   │   ├── helpers.go
│   │   │   ├── mcp_integration_test.go
│   │   │   ├── mcp_server_mock.go
│   │   │   ├── state_manager_mock.go
│   │   │   └── validation.go
│   │   ├── react_agent_extensions.go
│   │   ├── react_error_context.go
│   │   ├── react_recovery_engine.go
│   │   ├── react_recovery_types.go
│   │   ├── resources
│   │   │   ├── field_resolver.go
│   │   │   ├── id_extractor.go
│   │   │   └── pattern_matcher.go
│   │   └── types.go
│   ├── api
│   │   └── server.go
│   ├── aws
│   │   ├── alb.go
│   │   ├── asg.go
│   │   ├── client.go
│   │   ├── ec2.go
│   │   ├── params.go
│   │   ├── rds.go
│   │   ├── security_group.go
│   │   └── vpc.go
│   ├── conflict
│   │   └── resolver.go
│   ├── discovery
│   │   └── scanner.go
│   ├── graph
│   │   ├── analyzer.go
│   │   └── manager.go
│   ├── interfaces
│   │   ├── aws_resource.go
│   │   ├── mcp_tool.go
│   │   └── state_management.go
│   ├── mcp
│   │   ├── resource_definitions.go
│   │   ├── resource_registry.go
│   │   ├── server_integration.go
│   │   ├── server.go
│   │   └── tool_manager.go
│   ├── state
│   │   └── manager.go
│   ├── tools
│   │   ├── alb_tools.go
│   │   ├── ami_tools.go
│   │   ├── asg_tools.go
│   │   ├── ec2_tools.go
│   │   ├── factory.go
│   │   ├── helpers.go
│   │   ├── keypair_tools.go
│   │   ├── networking_tools.go
│   │   ├── rds_tools.go
│   │   ├── registry.go
│   │   ├── security_group_tools.go
│   │   ├── state_tools.go
│   │   ├── vpc_tools.go
│   │   └── zone_tools.go
│   ├── types
│   │   └── mcp.go
│   └── utilities
│       └── helpers.go
├── README.md
├── scripts
│   ├── install.sh
│   └── run-web-ui.sh
├── settings
│   ├── field-mappings-enhanced.yaml
│   ├── resource-extraction-enhanced.yaml
│   ├── resource-patterns-enhanced.yaml
│   └── templates
│       ├── decision-plan-prompt-optimized.txt
│       └── tools-execution-context-optimized.txt
└── web
    └── build
        ├── ai-infrastructure-agent.svg
        ├── asset-manifest.json
        ├── aws-service-icons
        │   ├── .DS_Store
        │   ├── analytics
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Athena_16.png
        │   │   │   ├── Arch_Amazon-Athena_16.svg
        │   │   │   ├── Arch_Amazon-CloudSearch_16.png
        │   │   │   ├── Arch_Amazon-CloudSearch_16.svg
        │   │   │   ├── Arch_Amazon-Data-Firehose_16.png
        │   │   │   ├── Arch_Amazon-Data-Firehose_16.svg
        │   │   │   ├── Arch_Amazon-DataZone_16.png
        │   │   │   ├── Arch_Amazon-DataZone_16.svg
        │   │   │   ├── Arch_Amazon-EMR_16.png
        │   │   │   ├── Arch_Amazon-EMR_16.svg
        │   │   │   ├── Arch_Amazon-FinSpace_16.png
        │   │   │   ├── Arch_Amazon-FinSpace_16.svg
        │   │   │   ├── Arch_Amazon-Kinesis_16.png
        │   │   │   ├── Arch_Amazon-Kinesis_16.svg
        │   │   │   ├── Arch_Amazon-Kinesis-Data-Streams_16.png
        │   │   │   ├── Arch_Amazon-Kinesis-Data-Streams_16.svg
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_16.png
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_16.svg
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Apache-Flink_16.png
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Apache-Flink_16.svg
        │   │   │   ├── Arch_Amazon-Managed-Streaming-for-Apache-Kafka_16.png
        │   │   │   ├── Arch_Amazon-Managed-Streaming-for-Apache-Kafka_16.svg
        │   │   │   ├── Arch_Amazon-OpenSearch-Service_16.png
        │   │   │   ├── Arch_Amazon-OpenSearch-Service_16.svg
        │   │   │   ├── Arch_Amazon-QuickSight_16.png
        │   │   │   ├── Arch_Amazon-QuickSight_16.svg
        │   │   │   ├── Arch_Amazon-Redshift_16.png
        │   │   │   ├── Arch_Amazon-Redshift_16.svg
        │   │   │   ├── Arch_Amazon-SageMaker_16.png
        │   │   │   ├── Arch_Amazon-SageMaker_16.svg
        │   │   │   ├── Arch_AWS-Clean-Rooms_16.png
        │   │   │   ├── Arch_AWS-Clean-Rooms_16.svg
        │   │   │   ├── Arch_AWS-Data-Exchange_16.png
        │   │   │   ├── Arch_AWS-Data-Exchange_16.svg
        │   │   │   ├── Arch_AWS-Entity-Resolution_16.png
        │   │   │   ├── Arch_AWS-Entity-Resolution_16.svg
        │   │   │   ├── Arch_AWS-Glue_16.png
        │   │   │   ├── Arch_AWS-Glue_16.svg
        │   │   │   ├── Arch_AWS-Glue-DataBrew_16.png
        │   │   │   ├── Arch_AWS-Glue-DataBrew_16.svg
        │   │   │   ├── Arch_AWS-Lake-Formation_16.png
        │   │   │   └── Arch_AWS-Lake-Formation_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Athena_32.png
        │   │   │   ├── Arch_Amazon-Athena_32.svg
        │   │   │   ├── Arch_Amazon-CloudSearch_32.png
        │   │   │   ├── Arch_Amazon-CloudSearch_32.svg
        │   │   │   ├── Arch_Amazon-Data-Firehose_32.png
        │   │   │   ├── Arch_Amazon-Data-Firehose_32.svg
        │   │   │   ├── Arch_Amazon-DataZone_32.png
        │   │   │   ├── Arch_Amazon-DataZone_32.svg
        │   │   │   ├── Arch_Amazon-EMR_32.png
        │   │   │   ├── Arch_Amazon-EMR_32.svg
        │   │   │   ├── Arch_Amazon-FinSpace_32.png
        │   │   │   ├── Arch_Amazon-FinSpace_32.svg
        │   │   │   ├── Arch_Amazon-Kinesis_32.png
        │   │   │   ├── Arch_Amazon-Kinesis_32.svg
        │   │   │   ├── Arch_Amazon-Kinesis-Data-Streams_32.png
        │   │   │   ├── Arch_Amazon-Kinesis-Data-Streams_32.svg
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_32.png
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_32.svg
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Apache-Flink_32.png
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Apache-Flink_32.svg
        │   │   │   ├── Arch_Amazon-Managed-Streaming-for-Apache-Kafka_32.png
        │   │   │   ├── Arch_Amazon-Managed-Streaming-for-Apache-Kafka_32.svg
        │   │   │   ├── Arch_Amazon-OpenSearch-Service_32.png
        │   │   │   ├── Arch_Amazon-OpenSearch-Service_32.svg
        │   │   │   ├── Arch_Amazon-QuickSight_32.png
        │   │   │   ├── Arch_Amazon-QuickSight_32.svg
        │   │   │   ├── Arch_Amazon-Redshift_32.png
        │   │   │   ├── Arch_Amazon-Redshift_32.svg
        │   │   │   ├── Arch_Amazon-SageMaker_32.png
        │   │   │   ├── Arch_Amazon-SageMaker_32.svg
        │   │   │   ├── Arch_AWS-Clean-Rooms_32.png
        │   │   │   ├── Arch_AWS-Clean-Rooms_32.svg
        │   │   │   ├── Arch_AWS-Data-Exchange_32.png
        │   │   │   ├── Arch_AWS-Data-Exchange_32.svg
        │   │   │   ├── Arch_AWS-Entity-Resolution_32.png
        │   │   │   ├── Arch_AWS-Entity-Resolution_32.svg
        │   │   │   ├── Arch_AWS-Glue_32.png
        │   │   │   ├── Arch_AWS-Glue_32.svg
        │   │   │   ├── Arch_AWS-Glue-DataBrew_32.png
        │   │   │   ├── Arch_AWS-Glue-DataBrew_32.svg
        │   │   │   ├── Arch_AWS-Lake-Formation_32.png
        │   │   │   └── Arch_AWS-Lake-Formation_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Athena_48.png
        │   │   │   ├── Arch_Amazon-Athena_48.svg
        │   │   │   ├── Arch_Amazon-CloudSearch_48.png
        │   │   │   ├── Arch_Amazon-CloudSearch_48.svg
        │   │   │   ├── Arch_Amazon-Data-Firehose_48.png
        │   │   │   ├── Arch_Amazon-Data-Firehose_48.svg
        │   │   │   ├── Arch_Amazon-DataZone_48.png
        │   │   │   ├── Arch_Amazon-DataZone_48.svg
        │   │   │   ├── Arch_Amazon-EMR_48.png
        │   │   │   ├── Arch_Amazon-EMR_48.svg
        │   │   │   ├── Arch_Amazon-FinSpace_48.png
        │   │   │   ├── Arch_Amazon-FinSpace_48.svg
        │   │   │   ├── Arch_Amazon-Kinesis_48.png
        │   │   │   ├── Arch_Amazon-Kinesis_48.svg
        │   │   │   ├── Arch_Amazon-Kinesis-Data-Streams_48.png
        │   │   │   ├── Arch_Amazon-Kinesis-Data-Streams_48.svg
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_48.png
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_48.svg
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Apache-Flink_48.png
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Apache-Flink_48.svg
        │   │   │   ├── Arch_Amazon-Managed-Streaming-for-Apache-Kafka_48.png
        │   │   │   ├── Arch_Amazon-Managed-Streaming-for-Apache-Kafka_48.svg
        │   │   │   ├── Arch_Amazon-OpenSearch-Service_48.png
        │   │   │   ├── Arch_Amazon-OpenSearch-Service_48.svg
        │   │   │   ├── Arch_Amazon-QuickSight_48.png
        │   │   │   ├── Arch_Amazon-QuickSight_48.svg
        │   │   │   ├── Arch_Amazon-Redshift_48.png
        │   │   │   ├── Arch_Amazon-Redshift_48.svg
        │   │   │   ├── Arch_Amazon-SageMaker_48.png
        │   │   │   ├── Arch_Amazon-SageMaker_48.svg
        │   │   │   ├── Arch_AWS-Clean-Rooms_48.png
        │   │   │   ├── Arch_AWS-Clean-Rooms_48.svg
        │   │   │   ├── Arch_AWS-Data-Exchange_48.png
        │   │   │   ├── Arch_AWS-Data-Exchange_48.svg
        │   │   │   ├── Arch_AWS-Entity-Resolution_48.png
        │   │   │   ├── Arch_AWS-Entity-Resolution_48.svg
        │   │   │   ├── Arch_AWS-Glue_48.png
        │   │   │   ├── Arch_AWS-Glue_48.svg
        │   │   │   ├── Arch_AWS-Glue-DataBrew_48.png
        │   │   │   ├── Arch_AWS-Glue-DataBrew_48.svg
        │   │   │   ├── Arch_AWS-Lake-Formation_48.png
        │   │   │   └── Arch_AWS-Lake-Formation_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Amazon-Athena_64.png
        │   │       ├── Arch_Amazon-Athena_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-CloudSearch_64.png
        │   │       ├── Arch_Amazon-CloudSearch_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Data-Firehose_64.png
        │   │       ├── Arch_Amazon-Data-Firehose_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-DataZone_64.png
        │   │       ├── Arch_Amazon-DataZone_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-EMR_64.png
        │   │       ├── Arch_Amazon-EMR_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-FinSpace_64.png
        │   │       ├── Arch_Amazon-FinSpace_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Kinesis_64.png
        │   │       ├── Arch_Amazon-Kinesis_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Kinesis-Data-Streams_64.png
        │   │       ├── Arch_Amazon-Kinesis-Data-Streams_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Kinesis-Video-Streams_64.png
        │   │       ├── Arch_Amazon-Kinesis-Video-Streams_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Managed-Service-for-Apache-Flink_64.png
        │   │       ├── Arch_Amazon-Managed-Service-for-Apache-Flink_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Managed-Streaming-for-Apache-Kafka_64.png
        │   │       ├── Arch_Amazon-Managed-Streaming-for-Apache-Kafka_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-OpenSearch-Service_64.png
        │   │       ├── Arch_Amazon-OpenSearch-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-QuickSight_64.png
        │   │       ├── Arch_Amazon-QuickSight_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Redshift_64.png
        │   │       ├── Arch_Amazon-Redshift_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-SageMaker_64.png
        │   │       ├── Arch_Amazon-SageMaker_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Clean-Rooms_64.png
        │   │       ├── Arch_AWS-Clean-Rooms_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Data-Exchange_64.png
        │   │       ├── Arch_AWS-Data-Exchange_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Entity-Resolution_64.png
        │   │       ├── Arch_AWS-Entity-Resolution_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Glue_64.png
        │   │       ├── Arch_AWS-Glue_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Glue-DataBrew_64.png
        │   │       ├── Arch_AWS-Glue-DataBrew_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Lake-Formation_64.png
        │   │       ├── Arch_AWS-Lake-Formation_64.svg
        │   │       └── [email protected]
        │   ├── app-integration
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-AppFlow_16.png
        │   │   │   ├── Arch_Amazon-AppFlow_16.svg
        │   │   │   ├── Arch_Amazon-EventBridge_16.png
        │   │   │   ├── Arch_Amazon-EventBridge_16.svg
        │   │   │   ├── Arch_Amazon-Managed-Workflows-for-Apache-Airflow_16.png
        │   │   │   ├── Arch_Amazon-Managed-Workflows-for-Apache-Airflow_16.svg
        │   │   │   ├── Arch_Amazon-MQ_16.png
        │   │   │   ├── Arch_Amazon-MQ_16.svg
        │   │   │   ├── Arch_Amazon-Simple-Notification-Service_16.png
        │   │   │   ├── Arch_Amazon-Simple-Notification-Service_16.svg
        │   │   │   ├── Arch_Amazon-Simple-Queue-Service_16.png
        │   │   │   ├── Arch_Amazon-Simple-Queue-Service_16.svg
        │   │   │   ├── Arch_AWS-AppSync_16.png
        │   │   │   ├── Arch_AWS-AppSync_16.svg
        │   │   │   ├── Arch_AWS-B2B-Data-Interchange_16.png
        │   │   │   ├── Arch_AWS-B2B-Data-Interchange_16.svg
        │   │   │   ├── Arch_AWS-Express-Workflows_16.png
        │   │   │   ├── Arch_AWS-Express-Workflows_16.svg
        │   │   │   ├── Arch_AWS-Step-Functions_16.png
        │   │   │   └── Arch_AWS-Step-Functions_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-AppFlow_32.png
        │   │   │   ├── Arch_Amazon-AppFlow_32.svg
        │   │   │   ├── Arch_Amazon-EventBridge_32.png
        │   │   │   ├── Arch_Amazon-EventBridge_32.svg
        │   │   │   ├── Arch_Amazon-Managed-Workflows-for-Apache-Airflow_32.png
        │   │   │   ├── Arch_Amazon-Managed-Workflows-for-Apache-Airflow_32.svg
        │   │   │   ├── Arch_Amazon-MQ_32.png
        │   │   │   ├── Arch_Amazon-MQ_32.svg
        │   │   │   ├── Arch_Amazon-Simple-Notification-Service_32.png
        │   │   │   ├── Arch_Amazon-Simple-Notification-Service_32.svg
        │   │   │   ├── Arch_Amazon-Simple-Queue-Service_32.png
        │   │   │   ├── Arch_Amazon-Simple-Queue-Service_32.svg
        │   │   │   ├── Arch_AWS-AppSync_32.png
        │   │   │   ├── Arch_AWS-AppSync_32.svg
        │   │   │   ├── Arch_AWS-B2B-Data-Interchange_32.png
        │   │   │   ├── Arch_AWS-B2B-Data-Interchange_32.svg
        │   │   │   ├── Arch_AWS-Express-Workflows_32.png
        │   │   │   ├── Arch_AWS-Express-Workflows_32.svg
        │   │   │   ├── Arch_AWS-Step-Functions_32.png
        │   │   │   └── Arch_AWS-Step-Functions_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-AppFlow_48.png
        │   │   │   ├── Arch_Amazon-AppFlow_48.svg
        │   │   │   ├── Arch_Amazon-EventBridge_48.png
        │   │   │   ├── Arch_Amazon-EventBridge_48.svg
        │   │   │   ├── Arch_Amazon-Managed-Workflows-for-Apache-Airflow_48.png
        │   │   │   ├── Arch_Amazon-Managed-Workflows-for-Apache-Airflow_48.svg
        │   │   │   ├── Arch_Amazon-MQ_48.png
        │   │   │   ├── Arch_Amazon-MQ_48.svg
        │   │   │   ├── Arch_Amazon-Simple-Notification-Service_48.png
        │   │   │   ├── Arch_Amazon-Simple-Notification-Service_48.svg
        │   │   │   ├── Arch_Amazon-Simple-Queue-Service_48.png
        │   │   │   ├── Arch_Amazon-Simple-Queue-Service_48.svg
        │   │   │   ├── Arch_AWS-AppSync_48.png
        │   │   │   ├── Arch_AWS-AppSync_48.svg
        │   │   │   ├── Arch_AWS-B2B-Data-Interchange_48.png
        │   │   │   ├── Arch_AWS-B2B-Data-Interchange_48.svg
        │   │   │   ├── Arch_AWS-Express-Workflows_48.png
        │   │   │   ├── Arch_AWS-Express-Workflows_48.svg
        │   │   │   ├── Arch_AWS-Step-Functions_48.png
        │   │   │   └── Arch_AWS-Step-Functions_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Amazon-AppFlow_64.png
        │   │       ├── Arch_Amazon-AppFlow_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-EventBridge_64.png
        │   │       ├── Arch_Amazon-EventBridge_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Managed-Workflows-for-Apache-Airflow_64.png
        │   │       ├── Arch_Amazon-Managed-Workflows-for-Apache-Airflow_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-MQ_64.png
        │   │       ├── Arch_Amazon-MQ_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Simple-Notification-Service_64.png
        │   │       ├── Arch_Amazon-Simple-Notification-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Simple-Queue-Service_64.png
        │   │       ├── Arch_Amazon-Simple-Queue-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-AppSync_64.png
        │   │       ├── Arch_AWS-AppSync_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-B2B-Data-Interchange_64.png
        │   │       ├── Arch_AWS-B2B-Data-Interchange_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Express-Workflows_64.png
        │   │       ├── Arch_AWS-Express-Workflows_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Step-Functions_64.png
        │   │       ├── Arch_AWS-Step-Functions_64.svg
        │   │       └── [email protected]
        │   ├── artificial-intelligence
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Augmented-AI-A2I_16.png
        │   │   │   ├── Arch_Amazon-Augmented-AI-A2I_16.svg
        │   │   │   ├── Arch_Amazon-Bedrock_16.png
        │   │   │   ├── Arch_Amazon-Bedrock_16.svg
        │   │   │   ├── Arch_Amazon-CodeGuru_16.png
        │   │   │   ├── Arch_Amazon-CodeGuru_16.svg
        │   │   │   ├── Arch_Amazon-CodeWhisperer_16.png
        │   │   │   ├── Arch_Amazon-CodeWhisperer_16.svg
        │   │   │   ├── Arch_Amazon-Comprehend_16.png
        │   │   │   ├── Arch_Amazon-Comprehend_16.svg
        │   │   │   ├── Arch_Amazon-Comprehend-Medical_16.png
        │   │   │   ├── Arch_Amazon-Comprehend-Medical_16.svg
        │   │   │   ├── Arch_Amazon-DevOps-Guru_16.png
        │   │   │   ├── Arch_Amazon-DevOps-Guru_16.svg
        │   │   │   ├── Arch_Amazon-Elastic-Inference_16.png
        │   │   │   ├── Arch_Amazon-Elastic-Inference_16.svg
        │   │   │   ├── Arch_Amazon-Forecast_16.png
        │   │   │   ├── Arch_Amazon-Forecast_16.svg
        │   │   │   ├── Arch_Amazon-Fraud-Detector_16.png
        │   │   │   ├── Arch_Amazon-Fraud-Detector_16.svg
        │   │   │   ├── Arch_Amazon-Kendra_16.png
        │   │   │   ├── Arch_Amazon-Kendra_16.svg
        │   │   │   ├── Arch_Amazon-Lex_16.png
        │   │   │   ├── Arch_Amazon-Lex_16.svg
        │   │   │   ├── Arch_Amazon-Lookout-for-Equipment_16.png
        │   │   │   ├── Arch_Amazon-Lookout-for-Equipment_16.svg
        │   │   │   ├── Arch_Amazon-Lookout-for-Metrics_16.png
        │   │   │   ├── Arch_Amazon-Lookout-for-Metrics_16.svg
        │   │   │   ├── Arch_Amazon-Lookout-for-Vision_16.png
        │   │   │   ├── Arch_Amazon-Lookout-for-Vision_16.svg
        │   │   │   ├── Arch_Amazon-Monitron_16.png
        │   │   │   ├── Arch_Amazon-Monitron_16.svg
        │   │   │   ├── Arch_Amazon-Nova_16.png
        │   │   │   ├── Arch_Amazon-Nova_16.svg
        │   │   │   ├── Arch_Amazon-Personalize_16.png
        │   │   │   ├── Arch_Amazon-Personalize_16.svg
        │   │   │   ├── Arch_Amazon-Polly_16.png
        │   │   │   ├── Arch_Amazon-Polly_16.svg
        │   │   │   ├── Arch_Amazon-Q_16.png
        │   │   │   ├── Arch_Amazon-Q_16.svg
        │   │   │   ├── Arch_Amazon-Rekognition_16.png
        │   │   │   ├── Arch_Amazon-Rekognition_16.svg
        │   │   │   ├── Arch_Amazon-SageMaker-AI_16.png
        │   │   │   ├── Arch_Amazon-SageMaker-AI_16.svg
        │   │   │   ├── Arch_Amazon-SageMaker-Ground-Truth_16.png
        │   │   │   ├── Arch_Amazon-SageMaker-Ground-Truth_16.svg
        │   │   │   ├── Arch_Amazon-SageMaker-Studio-Lab_16.png
        │   │   │   ├── Arch_Amazon-SageMaker-Studio-Lab_16.svg
        │   │   │   ├── Arch_Amazon-Textract_16.png
        │   │   │   ├── Arch_Amazon-Textract_16.svg
        │   │   │   ├── Arch_Amazon-Transcribe_16.png
        │   │   │   ├── Arch_Amazon-Transcribe_16.svg
        │   │   │   ├── Arch_Amazon-Translate_16.png
        │   │   │   ├── Arch_Amazon-Translate_16.svg
        │   │   │   ├── Arch_Apache-MXNet-on-AWS_16.png
        │   │   │   ├── Arch_Apache-MXNet-on-AWS_16.svg
        │   │   │   ├── Arch_AWS-App-Studio_16.png
        │   │   │   ├── Arch_AWS-App-Studio_16.svg
        │   │   │   ├── Arch_AWS-Deep-Learning-AMIs_16.png
        │   │   │   ├── Arch_AWS-Deep-Learning-AMIs_16.svg
        │   │   │   ├── Arch_AWS-Deep-Learning-Containers_16.png
        │   │   │   ├── Arch_AWS-Deep-Learning-Containers_16.svg
        │   │   │   ├── Arch_AWS-DeepComposer_16.png
        │   │   │   ├── Arch_AWS-DeepComposer_16.svg
        │   │   │   ├── Arch_AWS-DeepRacer_16.png
        │   │   │   ├── Arch_AWS-DeepRacer_16.svg
        │   │   │   ├── Arch_AWS-HealthImaging_16.png
        │   │   │   ├── Arch_AWS-HealthImaging_16.svg
        │   │   │   ├── Arch_AWS-HealthLake_16.png
        │   │   │   ├── Arch_AWS-HealthLake_16.svg
        │   │   │   ├── Arch_AWS-HealthOmics_16.png
        │   │   │   ├── Arch_AWS-HealthOmics_16.svg
        │   │   │   ├── Arch_AWS-HealthScribe_16.png
        │   │   │   ├── Arch_AWS-HealthScribe_16.svg
        │   │   │   ├── Arch_AWS-Neuron_16.png
        │   │   │   ├── Arch_AWS-Neuron_16.svg
        │   │   │   ├── Arch_AWS-Panorama_16.png
        │   │   │   ├── Arch_AWS-Panorama_16.svg
        │   │   │   ├── Arch_PyTorch-on-AWS_16.png
        │   │   │   ├── Arch_PyTorch-on-AWS_16.svg
        │   │   │   ├── Arch_TensorFlow-on-AWS_16.png
        │   │   │   └── Arch_TensorFlow-on-AWS_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Augmented-AI-A2I_32.png
        │   │   │   ├── Arch_Amazon-Augmented-AI-A2I_32.svg
        │   │   │   ├── Arch_Amazon-Bedrock_32.png
        │   │   │   ├── Arch_Amazon-Bedrock_32.svg
        │   │   │   ├── Arch_Amazon-CodeGuru_32.png
        │   │   │   ├── Arch_Amazon-CodeGuru_32.svg
        │   │   │   ├── Arch_Amazon-CodeWhisperer_32.png
        │   │   │   ├── Arch_Amazon-CodeWhisperer_32.svg
        │   │   │   ├── Arch_Amazon-Comprehend_32.png
        │   │   │   ├── Arch_Amazon-Comprehend_32.svg
        │   │   │   ├── Arch_Amazon-Comprehend-Medical_32.png
        │   │   │   ├── Arch_Amazon-Comprehend-Medical_32.svg
        │   │   │   ├── Arch_Amazon-DevOps-Guru_32.png
        │   │   │   ├── Arch_Amazon-DevOps-Guru_32.svg
        │   │   │   ├── Arch_Amazon-Elastic-Inference_32.png
        │   │   │   ├── Arch_Amazon-Elastic-Inference_32.svg
        │   │   │   ├── Arch_Amazon-Forecast_32.png
        │   │   │   ├── Arch_Amazon-Forecast_32.svg
        │   │   │   ├── Arch_Amazon-Fraud-Detector_32.png
        │   │   │   ├── Arch_Amazon-Fraud-Detector_32.svg
        │   │   │   ├── Arch_Amazon-Kendra_32.png
        │   │   │   ├── Arch_Amazon-Kendra_32.svg
        │   │   │   ├── Arch_Amazon-Lex_32.png
        │   │   │   ├── Arch_Amazon-Lex_32.svg
        │   │   │   ├── Arch_Amazon-Lookout-for-Equipment_32.png
        │   │   │   ├── Arch_Amazon-Lookout-for-Equipment_32.svg
        │   │   │   ├── Arch_Amazon-Lookout-for-Metrics_32.png
        │   │   │   ├── Arch_Amazon-Lookout-for-Metrics_32.svg
        │   │   │   ├── Arch_Amazon-Lookout-for-Vision_32.png
        │   │   │   ├── Arch_Amazon-Lookout-for-Vision_32.svg
        │   │   │   ├── Arch_Amazon-Monitron_32.png
        │   │   │   ├── Arch_Amazon-Monitron_32.svg
        │   │   │   ├── Arch_Amazon-Nova_32.png
        │   │   │   ├── Arch_Amazon-Nova_32.svg
        │   │   │   ├── Arch_Amazon-Personalize_32.png
        │   │   │   ├── Arch_Amazon-Personalize_32.svg
        │   │   │   ├── Arch_Amazon-Polly_32.png
        │   │   │   ├── Arch_Amazon-Polly_32.svg
        │   │   │   ├── Arch_Amazon-Q_32.png
        │   │   │   ├── Arch_Amazon-Q_32.svg
        │   │   │   ├── Arch_Amazon-Rekognition_32.png
        │   │   │   ├── Arch_Amazon-Rekognition_32.svg
        │   │   │   ├── Arch_Amazon-SageMaker-AI_32.png
        │   │   │   ├── Arch_Amazon-SageMaker-AI_32.svg
        │   │   │   ├── Arch_Amazon-SageMaker-Ground-Truth_32.png
        │   │   │   ├── Arch_Amazon-SageMaker-Ground-Truth_32.svg
        │   │   │   ├── Arch_Amazon-SageMaker-Studio-Lab_32.png
        │   │   │   ├── Arch_Amazon-SageMaker-Studio-Lab_32.svg
        │   │   │   ├── Arch_Amazon-Textract_32.png
        │   │   │   ├── Arch_Amazon-Textract_32.svg
        │   │   │   ├── Arch_Amazon-Transcribe_32.png
        │   │   │   ├── Arch_Amazon-Transcribe_32.svg
        │   │   │   ├── Arch_Amazon-Translate_32.png
        │   │   │   ├── Arch_Amazon-Translate_32.svg
        │   │   │   ├── Arch_Apache-MXNet-on-AWS_32.png
        │   │   │   ├── Arch_Apache-MXNet-on-AWS_32.svg
        │   │   │   ├── Arch_AWS-App-Studio_32.png
        │   │   │   ├── Arch_AWS-App-Studio_32.svg
        │   │   │   ├── Arch_AWS-Deep-Learning-AMIs_32.png
        │   │   │   ├── Arch_AWS-Deep-Learning-AMIs_32.svg
        │   │   │   ├── Arch_AWS-Deep-Learning-Containers_32.png
        │   │   │   ├── Arch_AWS-Deep-Learning-Containers_32.svg
        │   │   │   ├── Arch_AWS-DeepComposer_32.png
        │   │   │   ├── Arch_AWS-DeepComposer_32.svg
        │   │   │   ├── Arch_AWS-DeepRacer_32.png
        │   │   │   ├── Arch_AWS-DeepRacer_32.svg
        │   │   │   ├── Arch_AWS-HealthImaging_32.png
        │   │   │   ├── Arch_AWS-HealthImaging_32.svg
        │   │   │   ├── Arch_AWS-HealthLake_32.png
        │   │   │   ├── Arch_AWS-HealthLake_32.svg
        │   │   │   ├── Arch_AWS-HealthOmics_32.png
        │   │   │   ├── Arch_AWS-HealthOmics_32.svg
        │   │   │   ├── Arch_AWS-HealthScribe_32.png
        │   │   │   ├── Arch_AWS-HealthScribe_32.svg
        │   │   │   ├── Arch_AWS-Neuron_32.png
        │   │   │   ├── Arch_AWS-Neuron_32.svg
        │   │   │   ├── Arch_AWS-Panorama_32.png
        │   │   │   ├── Arch_AWS-Panorama_32.svg
        │   │   │   ├── Arch_PyTorch-on-AWS_32.png
        │   │   │   ├── Arch_PyTorch-on-AWS_32.svg
        │   │   │   ├── Arch_TensorFlow-on-AWS_32.png
        │   │   │   └── Arch_TensorFlow-on-AWS_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Augmented-AI-A2I_48.png
        │   │   │   ├── Arch_Amazon-Augmented-AI-A2I_48.svg
        │   │   │   ├── Arch_Amazon-Bedrock_48.png
        │   │   │   ├── Arch_Amazon-Bedrock_48.svg
        │   │   │   ├── Arch_Amazon-CodeGuru_48.png
        │   │   │   ├── Arch_Amazon-CodeGuru_48.svg
        │   │   │   ├── Arch_Amazon-CodeWhisperer_48.png
        │   │   │   ├── Arch_Amazon-CodeWhisperer_48.svg
        │   │   │   ├── Arch_Amazon-Comprehend_48.png
        │   │   │   ├── Arch_Amazon-Comprehend_48.svg
        │   │   │   ├── Arch_Amazon-Comprehend-Medical_48.png
        │   │   │   ├── Arch_Amazon-Comprehend-Medical_48.svg
        │   │   │   ├── Arch_Amazon-DevOps-Guru_48.png
        │   │   │   ├── Arch_Amazon-DevOps-Guru_48.svg
        │   │   │   ├── Arch_Amazon-Elastic-Inference_48.png
        │   │   │   ├── Arch_Amazon-Elastic-Inference_48.svg
        │   │   │   ├── Arch_Amazon-Forecast_48.png
        │   │   │   ├── Arch_Amazon-Forecast_48.svg
        │   │   │   ├── Arch_Amazon-Fraud-Detector_48.png
        │   │   │   ├── Arch_Amazon-Fraud-Detector_48.svg
        │   │   │   ├── Arch_Amazon-Kendra_48.png
        │   │   │   ├── Arch_Amazon-Kendra_48.svg
        │   │   │   ├── Arch_Amazon-Lex_48.png
        │   │   │   ├── Arch_Amazon-Lex_48.svg
        │   │   │   ├── Arch_Amazon-Lookout-for-Equipment_48.png
        │   │   │   ├── Arch_Amazon-Lookout-for-Equipment_48.svg
        │   │   │   ├── Arch_Amazon-Lookout-for-Metrics_48.png
        │   │   │   ├── Arch_Amazon-Lookout-for-Metrics_48.svg
        │   │   │   ├── Arch_Amazon-Lookout-for-Vision_48.png
        │   │   │   ├── Arch_Amazon-Lookout-for-Vision_48.svg
        │   │   │   ├── Arch_Amazon-Monitron_48.png
        │   │   │   ├── Arch_Amazon-Monitron_48.svg
        │   │   │   ├── Arch_Amazon-Nova_48.png
        │   │   │   ├── Arch_Amazon-Nova_48.svg
        │   │   │   ├── Arch_Amazon-Personalize_48.png
        │   │   │   ├── Arch_Amazon-Personalize_48.svg
        │   │   │   ├── Arch_Amazon-Polly_48.png
        │   │   │   ├── Arch_Amazon-Polly_48.svg
        │   │   │   ├── Arch_Amazon-Q_48.png
        │   │   │   ├── Arch_Amazon-Q_48.svg
        │   │   │   ├── Arch_Amazon-Rekognition_48.png
        │   │   │   ├── Arch_Amazon-Rekognition_48.svg
        │   │   │   ├── Arch_Amazon-SageMaker-AI_48.png
        │   │   │   ├── Arch_Amazon-SageMaker-AI_48.svg
        │   │   │   ├── Arch_Amazon-SageMaker-Ground-Truth_48.png
        │   │   │   ├── Arch_Amazon-SageMaker-Ground-Truth_48.svg
        │   │   │   ├── Arch_Amazon-SageMaker-Studio-Lab_48.png
        │   │   │   ├── Arch_Amazon-SageMaker-Studio-Lab_48.svg
        │   │   │   ├── Arch_Amazon-Textract_48.png
        │   │   │   ├── Arch_Amazon-Textract_48.svg
        │   │   │   ├── Arch_Amazon-Transcribe_48.png
        │   │   │   ├── Arch_Amazon-Transcribe_48.svg
        │   │   │   ├── Arch_Amazon-Translate_48.png
        │   │   │   ├── Arch_Amazon-Translate_48.svg
        │   │   │   ├── Arch_Apache-MXNet-on-AWS_48.png
        │   │   │   ├── Arch_Apache-MXNet-on-AWS_48.svg
        │   │   │   ├── Arch_AWS-App-Studio_48.png
        │   │   │   ├── Arch_AWS-App-Studio_48.svg
        │   │   │   ├── Arch_AWS-Deep-Learning-AMIs_48.png
        │   │   │   ├── Arch_AWS-Deep-Learning-AMIs_48.svg
        │   │   │   ├── Arch_AWS-Deep-Learning-Containers_48.png
        │   │   │   ├── Arch_AWS-Deep-Learning-Containers_48.svg
        │   │   │   ├── Arch_AWS-DeepComposer_48.png
        │   │   │   ├── Arch_AWS-DeepComposer_48.svg
        │   │   │   ├── Arch_AWS-DeepRacer_48.png
        │   │   │   ├── Arch_AWS-DeepRacer_48.svg
        │   │   │   ├── Arch_AWS-HealthImaging_48.png
        │   │   │   ├── Arch_AWS-HealthImaging_48.svg
        │   │   │   ├── Arch_AWS-HealthLake_48.png
        │   │   │   ├── Arch_AWS-HealthLake_48.svg
        │   │   │   ├── Arch_AWS-HealthOmics_48.png
        │   │   │   ├── Arch_AWS-HealthOmics_48.svg
        │   │   │   ├── Arch_AWS-HealthScribe_48.png
        │   │   │   ├── Arch_AWS-HealthScribe_48.svg
        │   │   │   ├── Arch_AWS-Neuron_48.png
        │   │   │   ├── Arch_AWS-Neuron_48.svg
        │   │   │   ├── Arch_AWS-Panorama_48.png
        │   │   │   ├── Arch_AWS-Panorama_48.svg
        │   │   │   ├── Arch_PyTorch-on-AWS_48.png
        │   │   │   ├── Arch_PyTorch-on-AWS_48.svg
        │   │   │   ├── Arch_TensorFlow-on-AWS_48.png
        │   │   │   └── Arch_TensorFlow-on-AWS_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Amazon-Augmented-AI-A2I_64.png
        │   │       ├── Arch_Amazon-Augmented-AI-A2I_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Bedrock_64.png
        │   │       ├── Arch_Amazon-Bedrock_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-CodeGuru_64.png
        │   │       ├── Arch_Amazon-CodeGuru_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-CodeWhisperer_64.png
        │   │       ├── Arch_Amazon-CodeWhisperer_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Comprehend_64.png
        │   │       ├── Arch_Amazon-Comprehend_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Comprehend-Medical_64.png
        │   │       ├── Arch_Amazon-Comprehend-Medical_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-DevOps-Guru_64.png
        │   │       ├── Arch_Amazon-DevOps-Guru_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Elastic-Inference_64.png
        │   │       ├── Arch_Amazon-Elastic-Inference_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Forecast_64.png
        │   │       ├── Arch_Amazon-Forecast_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Fraud-Detector_64.png
        │   │       ├── Arch_Amazon-Fraud-Detector_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Kendra_64.png
        │   │       ├── Arch_Amazon-Kendra_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Lex_64.png
        │   │       ├── Arch_Amazon-Lex_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Lookout-for-Equipment_64.png
        │   │       ├── Arch_Amazon-Lookout-for-Equipment_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Lookout-for-Metrics_64.png
        │   │       ├── Arch_Amazon-Lookout-for-Metrics_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Lookout-for-Vision_64.png
        │   │       ├── Arch_Amazon-Lookout-for-Vision_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Monitron_64.png
        │   │       ├── Arch_Amazon-Monitron_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Nova_64.png
        │   │       ├── Arch_Amazon-Nova_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Personalize_64.png
        │   │       ├── Arch_Amazon-Personalize_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Polly_64.png
        │   │       ├── Arch_Amazon-Polly_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Q_64.png
        │   │       ├── Arch_Amazon-Q_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Rekognition_64.png
        │   │       ├── Arch_Amazon-Rekognition_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-SageMaker-AI_64.png
        │   │       ├── Arch_Amazon-SageMaker-AI_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-SageMaker-Ground-Truth_64.png
        │   │       ├── Arch_Amazon-SageMaker-Ground-Truth_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-SageMaker-Studio-Lab_64.png
        │   │       ├── Arch_Amazon-SageMaker-Studio-Lab_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Textract_64.png
        │   │       ├── Arch_Amazon-Textract_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Transcribe_64.png
        │   │       ├── Arch_Amazon-Transcribe_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Translate_64.png
        │   │       ├── Arch_Amazon-Translate_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Apache-MXNet-on-AWS_64.png
        │   │       ├── Arch_Apache-MXNet-on-AWS_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-App-Studio_64.png
        │   │       ├── Arch_AWS-App-Studio_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Deep-Learning-AMIs_64.png
        │   │       ├── Arch_AWS-Deep-Learning-AMIs_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Deep-Learning-Containers_64.png
        │   │       ├── Arch_AWS-Deep-Learning-Containers_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-DeepComposer_64.png
        │   │       ├── Arch_AWS-DeepComposer_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-DeepRacer_64.png
        │   │       ├── Arch_AWS-DeepRacer_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-HealthImaging_64.png
        │   │       ├── Arch_AWS-HealthImaging_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-HealthLake_64.png
        │   │       ├── Arch_AWS-HealthLake_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-HealthOmics_64.png
        │   │       ├── Arch_AWS-HealthOmics_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-HealthScribe_64.png
        │   │       ├── Arch_AWS-HealthScribe_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Neuron_64.png
        │   │       ├── Arch_AWS-Neuron_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Panorama_64.png
        │   │       ├── Arch_AWS-Panorama_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_PyTorch-on-AWS_64.png
        │   │       ├── Arch_PyTorch-on-AWS_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_TensorFlow-on-AWS_64.png
        │   │       ├── Arch_TensorFlow-on-AWS_64.svg
        │   │       └── [email protected]
        │   ├── blockchain
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── Arch_Amazon-Managed-Blockchain_16.png
        │   │   │   ├── Arch_Amazon-Managed-Blockchain_16.svg
        │   │   │   ├── Arch_Amazon-Quantum-Ledger-Database_16.png
        │   │   │   └── Arch_Amazon-Quantum-Ledger-Database_16.svg
        │   │   ├── 32
        │   │   │   ├── Arch_Amazon-Managed-Blockchain_32.png
        │   │   │   ├── Arch_Amazon-Managed-Blockchain_32.svg
        │   │   │   ├── Arch_Amazon-Quantum-Ledger-Database_32.png
        │   │   │   └── Arch_Amazon-Quantum-Ledger-Database_32.svg
        │   │   ├── 48
        │   │   │   ├── Arch_Amazon-Managed-Blockchain_48.png
        │   │   │   ├── Arch_Amazon-Managed-Blockchain_48.svg
        │   │   │   ├── Arch_Amazon-Quantum-Ledger-Database_48.png
        │   │   │   └── Arch_Amazon-Quantum-Ledger-Database_48.svg
        │   │   └── 64
        │   │       ├── Arch_Amazon-Managed-Blockchain_64.png
        │   │       ├── Arch_Amazon-Managed-Blockchain_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Quantum-Ledger-Database_64.png
        │   │       ├── Arch_Amazon-Quantum-Ledger-Database_64.svg
        │   │       └── [email protected]
        │   ├── business-applications
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Alexa-For-Business_16.png
        │   │   │   ├── Arch_Alexa-For-Business_16.svg
        │   │   │   ├── Arch_Amazon-Chime_16.png
        │   │   │   ├── Arch_Amazon-Chime_16.svg
        │   │   │   ├── Arch_Amazon-Chime-SDK_16.png
        │   │   │   ├── Arch_Amazon-Chime-SDK_16.svg
        │   │   │   ├── Arch_Amazon-Connect_16.png
        │   │   │   ├── Arch_Amazon-Connect_16.svg
        │   │   │   ├── Arch_Amazon-Pinpoint_16.png
        │   │   │   ├── Arch_Amazon-Pinpoint_16.svg
        │   │   │   ├── Arch_Amazon-Pinpoint-APIs_16.png
        │   │   │   ├── Arch_Amazon-Pinpoint-APIs_16.svg
        │   │   │   ├── Arch_Amazon-Simple-Email-Service_16.png
        │   │   │   ├── Arch_Amazon-Simple-Email-Service_16.svg
        │   │   │   ├── Arch_Amazon-WorkDocs_16.png
        │   │   │   ├── Arch_Amazon-WorkDocs_16.svg
        │   │   │   ├── Arch_Amazon-WorkDocs-SDK_16.png
        │   │   │   ├── Arch_Amazon-WorkDocs-SDK_16.svg
        │   │   │   ├── Arch_Amazon-WorkMail_16.png
        │   │   │   ├── Arch_Amazon-WorkMail_16.svg
        │   │   │   ├── Arch_AWS-AppFabric_16.png
        │   │   │   ├── Arch_AWS-AppFabric_16.svg
        │   │   │   ├── Arch_AWS-End-User-Messaging_16.png
        │   │   │   ├── Arch_AWS-End-User-Messaging_16.svg
        │   │   │   ├── Arch_AWS-Supply-Chain_16.png
        │   │   │   ├── Arch_AWS-Supply-Chain_16.svg
        │   │   │   ├── Arch_AWS-Wickr_16.png
        │   │   │   └── Arch_AWS-Wickr_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Alexa-For-Business_32.png
        │   │   │   ├── Arch_Alexa-For-Business_32.svg
        │   │   │   ├── Arch_Amazon-Chime_32.png
        │   │   │   ├── Arch_Amazon-Chime_32.svg
        │   │   │   ├── Arch_Amazon-Chime-SDK_32.png
        │   │   │   ├── Arch_Amazon-Chime-SDK_32.svg
        │   │   │   ├── Arch_Amazon-Connect_32.png
        │   │   │   ├── Arch_Amazon-Connect_32.svg
        │   │   │   ├── Arch_Amazon-Pinpoint_32.png
        │   │   │   ├── Arch_Amazon-Pinpoint_32.svg
        │   │   │   ├── Arch_Amazon-Pinpoint-APIs_32.png
        │   │   │   ├── Arch_Amazon-Pinpoint-APIs_32.svg
        │   │   │   ├── Arch_Amazon-Simple-Email-Service_32.png
        │   │   │   ├── Arch_Amazon-Simple-Email-Service_32.svg
        │   │   │   ├── Arch_Amazon-WorkDocs_32.png
        │   │   │   ├── Arch_Amazon-WorkDocs_32.svg
        │   │   │   ├── Arch_Amazon-WorkDocs-SDK_32.png
        │   │   │   ├── Arch_Amazon-WorkDocs-SDK_32.svg
        │   │   │   ├── Arch_Amazon-WorkMail_32.png
        │   │   │   ├── Arch_Amazon-WorkMail_32.svg
        │   │   │   ├── Arch_AWS-AppFabric_32.png
        │   │   │   ├── Arch_AWS-AppFabric_32.svg
        │   │   │   ├── Arch_AWS-End-User-Messaging_32.png
        │   │   │   ├── Arch_AWS-End-User-Messaging_32.svg
        │   │   │   ├── Arch_AWS-Supply-Chain_32.png
        │   │   │   ├── Arch_AWS-Supply-Chain_32.svg
        │   │   │   ├── Arch_AWS-Wickr_32.png
        │   │   │   └── Arch_AWS-Wickr_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Alexa-For-Business_48.png
        │   │   │   ├── Arch_Alexa-For-Business_48.svg
        │   │   │   ├── Arch_Amazon-Chime_48.png
        │   │   │   ├── Arch_Amazon-Chime_48.svg
        │   │   │   ├── Arch_Amazon-Chime-SDK_48.png
        │   │   │   ├── Arch_Amazon-Chime-SDK_48.svg
        │   │   │   ├── Arch_Amazon-Connect_48.png
        │   │   │   ├── Arch_Amazon-Connect_48.svg
        │   │   │   ├── Arch_Amazon-Pinpoint_48.png
        │   │   │   ├── Arch_Amazon-Pinpoint_48.svg
        │   │   │   ├── Arch_Amazon-Pinpoint-APIs_48.png
        │   │   │   ├── Arch_Amazon-Pinpoint-APIs_48.svg
        │   │   │   ├── Arch_Amazon-Simple-Email-Service_48.png
        │   │   │   ├── Arch_Amazon-Simple-Email-Service_48.svg
        │   │   │   ├── Arch_Amazon-WorkDocs_48.png
        │   │   │   ├── Arch_Amazon-WorkDocs_48.svg
        │   │   │   ├── Arch_Amazon-WorkDocs-SDK_48.png
        │   │   │   ├── Arch_Amazon-WorkDocs-SDK_48.svg
        │   │   │   ├── Arch_Amazon-WorkMail_48.png
        │   │   │   ├── Arch_Amazon-WorkMail_48.svg
        │   │   │   ├── Arch_AWS-AppFabric_48.png
        │   │   │   ├── Arch_AWS-AppFabric_48.svg
        │   │   │   ├── Arch_AWS-End-User-Messaging_48.png
        │   │   │   ├── Arch_AWS-End-User-Messaging_48.svg
        │   │   │   ├── Arch_AWS-Supply-Chain_48.png
        │   │   │   ├── Arch_AWS-Supply-Chain_48.svg
        │   │   │   ├── Arch_AWS-Wickr_48.png
        │   │   │   └── Arch_AWS-Wickr_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Alexa-For-Business_64.png
        │   │       ├── Arch_Alexa-For-Business_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Chime_64.png
        │   │       ├── Arch_Amazon-Chime_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Chime-SDK_64.png
        │   │       ├── Arch_Amazon-Chime-SDK_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Connect_64.png
        │   │       ├── Arch_Amazon-Connect_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Pinpoint_64.png
        │   │       ├── Arch_Amazon-Pinpoint_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Pinpoint-APIs_64.png
        │   │       ├── Arch_Amazon-Pinpoint-APIs_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Simple-Email-Service_64.png
        │   │       ├── Arch_Amazon-Simple-Email-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-WorkDocs_64.png
        │   │       ├── Arch_Amazon-WorkDocs_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-WorkDocs-SDK_64.png
        │   │       ├── Arch_Amazon-WorkDocs-SDK_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-WorkMail_64.png
        │   │       ├── Arch_Amazon-WorkMail_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-AppFabric_64.png
        │   │       ├── Arch_AWS-AppFabric_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-End-User-Messaging_64.png
        │   │       ├── Arch_AWS-End-User-Messaging_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Supply-Chain_64.png
        │   │       ├── Arch_AWS-Supply-Chain_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Wickr_64.png
        │   │       ├── Arch_AWS-Wickr_64.svg
        │   │       └── [email protected]
        │   ├── cloud-financial
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_AWS-Billing-Conductor_16.png
        │   │   │   ├── Arch_AWS-Billing-Conductor_16.svg
        │   │   │   ├── Arch_AWS-Budgets_16.png
        │   │   │   ├── Arch_AWS-Budgets_16.svg
        │   │   │   ├── Arch_AWS-Cost-and-Usage-Report_16.png
        │   │   │   ├── Arch_AWS-Cost-and-Usage-Report_16.svg
        │   │   │   ├── Arch_AWS-Cost-Explorer_16.png
        │   │   │   ├── Arch_AWS-Cost-Explorer_16.svg
        │   │   │   ├── Arch_Reserved-Instance-Reporting_16.png
        │   │   │   ├── Arch_Reserved-Instance-Reporting_16.svg
        │   │   │   ├── Arch_Savings-Plans_16.png
        │   │   │   └── Arch_Savings-Plans_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_AWS-Billing-Conductor_32.png
        │   │   │   ├── Arch_AWS-Billing-Conductor_32.svg
        │   │   │   ├── Arch_AWS-Budgets_32.png
        │   │   │   ├── Arch_AWS-Budgets_32.svg
        │   │   │   ├── Arch_AWS-Cost-and-Usage-Report_32.png
        │   │   │   ├── Arch_AWS-Cost-and-Usage-Report_32.svg
        │   │   │   ├── Arch_AWS-Cost-Explorer_32.png
        │   │   │   ├── Arch_AWS-Cost-Explorer_32.svg
        │   │   │   ├── Arch_Reserved-Instance-Reporting_32.png
        │   │   │   ├── Arch_Reserved-Instance-Reporting_32.svg
        │   │   │   ├── Arch_Savings-Plans_32.png
        │   │   │   └── Arch_Savings-Plans_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_AWS-Billing-Conductor_48.png
        │   │   │   ├── Arch_AWS-Billing-Conductor_48.svg
        │   │   │   ├── Arch_AWS-Budgets_48.png
        │   │   │   ├── Arch_AWS-Budgets_48.svg
        │   │   │   ├── Arch_AWS-Cost-and-Usage-Report_48.png
        │   │   │   ├── Arch_AWS-Cost-and-Usage-Report_48.svg
        │   │   │   ├── Arch_AWS-Cost-Explorer_48.png
        │   │   │   ├── Arch_AWS-Cost-Explorer_48.svg
        │   │   │   ├── Arch_Reserved-Instance-Reporting_48.png
        │   │   │   ├── Arch_Reserved-Instance-Reporting_48.svg
        │   │   │   ├── Arch_Savings-Plans_48.png
        │   │   │   └── Arch_Savings-Plans_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_AWS-Billing-Conductor_64.png
        │   │       ├── Arch_AWS-Billing-Conductor_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Budgets_64.png
        │   │       ├── Arch_AWS-Budgets_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Cost-and-Usage-Report_64.png
        │   │       ├── Arch_AWS-Cost-and-Usage-Report_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Cost-Explorer_64.png
        │   │       ├── Arch_AWS-Cost-Explorer_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Reserved-Instance-Reporting_64.png
        │   │       ├── Arch_Reserved-Instance-Reporting_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Savings-Plans_64.png
        │   │       ├── Arch_Savings-Plans_64.svg
        │   │       └── [email protected]
        │   ├── compute
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-DCV_16.png
        │   │   │   ├── Arch_Amazon-DCV_16.svg
        │   │   │   ├── Arch_Amazon-EC2_16.png
        │   │   │   ├── Arch_Amazon-EC2_16.svg
        │   │   │   ├── Arch_Amazon-EC2-Auto-Scaling_16.png
        │   │   │   ├── Arch_Amazon-EC2-Auto-Scaling_16.svg
        │   │   │   ├── Arch_Amazon-EC2-Image-Builder_16.png
        │   │   │   ├── Arch_Amazon-EC2-Image-Builder_16.svg
        │   │   │   ├── Arch_Amazon-Elastic-VMware-Service_16.png
        │   │   │   ├── Arch_Amazon-Elastic-VMware-Service_16.svg
        │   │   │   ├── Arch_Amazon-Lightsail_16.png
        │   │   │   ├── Arch_Amazon-Lightsail_16.svg
        │   │   │   ├── Arch_Amazon-Lightsail-for-Research_16.png
        │   │   │   ├── Arch_Amazon-Lightsail-for-Research_16.svg
        │   │   │   ├── Arch_AWS-App-Runner_16.png
        │   │   │   ├── Arch_AWS-App-Runner_16.svg
        │   │   │   ├── Arch_AWS-Batch_16.png
        │   │   │   ├── Arch_AWS-Batch_16.svg
        │   │   │   ├── Arch_AWS-Compute-Optimizer_16.png
        │   │   │   ├── Arch_AWS-Compute-Optimizer_16.svg
        │   │   │   ├── Arch_AWS-Elastic-Beanstalk_16.png
        │   │   │   ├── Arch_AWS-Elastic-Beanstalk_16.svg
        │   │   │   ├── Arch_AWS-Lambda_16.png
        │   │   │   ├── Arch_AWS-Lambda_16.svg
        │   │   │   ├── Arch_AWS-Local-Zones_16.png
        │   │   │   ├── Arch_AWS-Local-Zones_16.svg
        │   │   │   ├── Arch_AWS-Nitro-Enclaves_16.png
        │   │   │   ├── Arch_AWS-Nitro-Enclaves_16.svg
        │   │   │   ├── Arch_AWS-Outposts-family_16.png
        │   │   │   ├── Arch_AWS-Outposts-family_16.svg
        │   │   │   ├── Arch_AWS-Outposts-rack_16.png
        │   │   │   ├── Arch_AWS-Outposts-rack_16.svg
        │   │   │   ├── Arch_AWS-Outposts-servers_16.png
        │   │   │   ├── Arch_AWS-Outposts-servers_16.svg
        │   │   │   ├── Arch_AWS-Parallel-Cluster_16.png
        │   │   │   ├── Arch_AWS-Parallel-Cluster_16.svg
        │   │   │   ├── Arch_AWS-Parallel-Computing-Service_16.png
        │   │   │   ├── Arch_AWS-Parallel-Computing-Service_16.svg
        │   │   │   ├── Arch_AWS-Serverless-Application-Repository_16.png
        │   │   │   ├── Arch_AWS-Serverless-Application-Repository_16.svg
        │   │   │   ├── Arch_AWS-SimSpace-Weaver_16.png
        │   │   │   ├── Arch_AWS-SimSpace-Weaver_16.svg
        │   │   │   ├── Arch_AWS-Wavelength_16.png
        │   │   │   ├── Arch_AWS-Wavelength_16.svg
        │   │   │   ├── Arch_Bottlerocket_16.png
        │   │   │   ├── Arch_Bottlerocket_16.svg
        │   │   │   ├── Arch_Elastic-Fabric-Adapter_16.png
        │   │   │   ├── Arch_Elastic-Fabric-Adapter_16.svg
        │   │   │   ├── Arch_NICE-EnginFrame_16.png
        │   │   │   └── Arch_NICE-EnginFrame_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-DCV_32.png
        │   │   │   ├── Arch_Amazon-DCV_32.svg
        │   │   │   ├── Arch_Amazon-EC2_32.png
        │   │   │   ├── Arch_Amazon-EC2_32.svg
        │   │   │   ├── Arch_Amazon-EC2-Auto-Scaling_32.png
        │   │   │   ├── Arch_Amazon-EC2-Auto-Scaling_32.svg
        │   │   │   ├── Arch_Amazon-EC2-Image-Builder_32.png
        │   │   │   ├── Arch_Amazon-EC2-Image-Builder_32.svg
        │   │   │   ├── Arch_Amazon-Elastic-VMware-Service_32.png
        │   │   │   ├── Arch_Amazon-Elastic-VMware-Service_32.svg
        │   │   │   ├── Arch_Amazon-Lightsail_32.png
        │   │   │   ├── Arch_Amazon-Lightsail_32.svg
        │   │   │   ├── Arch_Amazon-Lightsail-for-Research_32.png
        │   │   │   ├── Arch_Amazon-Lightsail-for-Research_32.svg
        │   │   │   ├── Arch_AWS-App-Runner_32.png
        │   │   │   ├── Arch_AWS-App-Runner_32.svg
        │   │   │   ├── Arch_AWS-Batch_32.png
        │   │   │   ├── Arch_AWS-Batch_32.svg
        │   │   │   ├── Arch_AWS-Compute-Optimizer_32.png
        │   │   │   ├── Arch_AWS-Compute-Optimizer_32.svg
        │   │   │   ├── Arch_AWS-Elastic-Beanstalk_32.png
        │   │   │   ├── Arch_AWS-Elastic-Beanstalk_32.svg
        │   │   │   ├── Arch_AWS-Lambda_32.png
        │   │   │   ├── Arch_AWS-Lambda_32.svg
        │   │   │   ├── Arch_AWS-Local-Zones_32.png
        │   │   │   ├── Arch_AWS-Local-Zones_32.svg
        │   │   │   ├── Arch_AWS-Nitro-Enclaves_32.png
        │   │   │   ├── Arch_AWS-Nitro-Enclaves_32.svg
        │   │   │   ├── Arch_AWS-Outposts-family_32.png
        │   │   │   ├── Arch_AWS-Outposts-family_32.svg
        │   │   │   ├── Arch_AWS-Outposts-rack_32.png
        │   │   │   ├── Arch_AWS-Outposts-rack_32.svg
        │   │   │   ├── Arch_AWS-Outposts-servers_32.png
        │   │   │   ├── Arch_AWS-Outposts-servers_32.svg
        │   │   │   ├── Arch_AWS-Parallel-Cluster_32.png
        │   │   │   ├── Arch_AWS-Parallel-Cluster_32.svg
        │   │   │   ├── Arch_AWS-Parallel-Computing-Service_32.png
        │   │   │   ├── Arch_AWS-Parallel-Computing-Service_32.svg
        │   │   │   ├── Arch_AWS-Serverless-Application-Repository_32.png
        │   │   │   ├── Arch_AWS-Serverless-Application-Repository_32.svg
        │   │   │   ├── Arch_AWS-SimSpace-Weaver_32.png
        │   │   │   ├── Arch_AWS-SimSpace-Weaver_32.svg
        │   │   │   ├── Arch_AWS-Wavelength_32.png
        │   │   │   ├── Arch_AWS-Wavelength_32.svg
        │   │   │   ├── Arch_Bottlerocket_32.png
        │   │   │   ├── Arch_Bottlerocket_32.svg
        │   │   │   ├── Arch_Elastic-Fabric-Adapter_32.png
        │   │   │   ├── Arch_Elastic-Fabric-Adapter_32.svg
        │   │   │   ├── Arch_NICE-EnginFrame_32.png
        │   │   │   └── Arch_NICE-EnginFrame_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-DCV_48.png
        │   │   │   ├── Arch_Amazon-DCV_48.svg
        │   │   │   ├── Arch_Amazon-EC2_48.png
        │   │   │   ├── Arch_Amazon-EC2_48.svg
        │   │   │   ├── Arch_Amazon-EC2-Auto-Scaling_48.png
        │   │   │   ├── Arch_Amazon-EC2-Auto-Scaling_48.svg
        │   │   │   ├── Arch_Amazon-EC2-Image-Builder_48.png
        │   │   │   ├── Arch_Amazon-EC2-Image-Builder_48.svg
        │   │   │   ├── Arch_Amazon-Elastic-VMware-Service_48.png
        │   │   │   ├── Arch_Amazon-Elastic-VMware-Service_48.svg
        │   │   │   ├── Arch_Amazon-Lightsail_48.png
        │   │   │   ├── Arch_Amazon-Lightsail_48.svg
        │   │   │   ├── Arch_Amazon-Lightsail-for-Research_48.png
        │   │   │   ├── Arch_Amazon-Lightsail-for-Research_48.svg
        │   │   │   ├── Arch_AWS-App-Runner_48.png
        │   │   │   ├── Arch_AWS-App-Runner_48.svg
        │   │   │   ├── Arch_AWS-Batch_48.png
        │   │   │   ├── Arch_AWS-Batch_48.svg
        │   │   │   ├── Arch_AWS-Compute-Optimizer_48.png
        │   │   │   ├── Arch_AWS-Compute-Optimizer_48.svg
        │   │   │   ├── Arch_AWS-Elastic-Beanstalk_48.png
        │   │   │   ├── Arch_AWS-Elastic-Beanstalk_48.svg
        │   │   │   ├── Arch_AWS-Lambda_48.png
        │   │   │   ├── Arch_AWS-Lambda_48.svg
        │   │   │   ├── Arch_AWS-Local-Zones_48.png
        │   │   │   ├── Arch_AWS-Local-Zones_48.svg
        │   │   │   ├── Arch_AWS-Nitro-Enclaves_48.png
        │   │   │   ├── Arch_AWS-Nitro-Enclaves_48.svg
        │   │   │   ├── Arch_AWS-Outposts-family_48.png
        │   │   │   ├── Arch_AWS-Outposts-family_48.svg
        │   │   │   ├── Arch_AWS-Outposts-rack_48.png
        │   │   │   ├── Arch_AWS-Outposts-rack_48.svg
        │   │   │   ├── Arch_AWS-Outposts-servers_48.png
        │   │   │   ├── Arch_AWS-Outposts-servers_48.svg
        │   │   │   ├── Arch_AWS-Parallel-Cluster_48.png
        │   │   │   ├── Arch_AWS-Parallel-Cluster_48.svg
        │   │   │   ├── Arch_AWS-Parallel-Computing-Service_48.png
        │   │   │   ├── Arch_AWS-Parallel-Computing-Service_48.svg
        │   │   │   ├── Arch_AWS-Serverless-Application-Repository_48.png
        │   │   │   ├── Arch_AWS-Serverless-Application-Repository_48.svg
        │   │   │   ├── Arch_AWS-SimSpace-Weaver_48.png
        │   │   │   ├── Arch_AWS-SimSpace-Weaver_48.svg
        │   │   │   ├── Arch_AWS-Wavelength_48.png
        │   │   │   ├── Arch_AWS-Wavelength_48.svg
        │   │   │   ├── Arch_Bottlerocket_48.png
        │   │   │   ├── Arch_Bottlerocket_48.svg
        │   │   │   ├── Arch_Elastic-Fabric-Adapter_48.png
        │   │   │   ├── Arch_Elastic-Fabric-Adapter_48.svg
        │   │   │   ├── Arch_NICE-EnginFrame_48.png
        │   │   │   └── Arch_NICE-EnginFrame_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Amazon-DCV_64.png
        │   │       ├── Arch_Amazon-DCV_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-EC2_64.png
        │   │       ├── Arch_Amazon-EC2_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-EC2-Auto-Scaling_64.png
        │   │       ├── Arch_Amazon-EC2-Auto-Scaling_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-EC2-Image-Builder_64.png
        │   │       ├── Arch_Amazon-EC2-Image-Builder_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Elastic-VMware-Service_64.png
        │   │       ├── Arch_Amazon-Elastic-VMware-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Lightsail_64.png
        │   │       ├── Arch_Amazon-Lightsail_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Lightsail-for-Research_64.png
        │   │       ├── Arch_Amazon-Lightsail-for-Research_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-App-Runner_64.png
        │   │       ├── Arch_AWS-App-Runner_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Batch_64.png
        │   │       ├── Arch_AWS-Batch_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Compute-Optimizer_64.png
        │   │       ├── Arch_AWS-Compute-Optimizer_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elastic-Beanstalk_64.png
        │   │       ├── Arch_AWS-Elastic-Beanstalk_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Lambda_64.png
        │   │       ├── Arch_AWS-Lambda_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Local-Zones_64.png
        │   │       ├── Arch_AWS-Local-Zones_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Nitro-Enclaves_64.png
        │   │       ├── Arch_AWS-Nitro-Enclaves_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Outposts-family_64.png
        │   │       ├── Arch_AWS-Outposts-family_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Outposts-rack_64.png
        │   │       ├── Arch_AWS-Outposts-rack_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Outposts-servers_64.png
        │   │       ├── Arch_AWS-Outposts-servers_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Parallel-Cluster_64.png
        │   │       ├── Arch_AWS-Parallel-Cluster_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Parallel-Computing-Service_64.png
        │   │       ├── Arch_AWS-Parallel-Computing-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Serverless-Application-Repository_64.png
        │   │       ├── Arch_AWS-Serverless-Application-Repository_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-SimSpace-Weaver_64.png
        │   │       ├── Arch_AWS-SimSpace-Weaver_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Wavelength_64.png
        │   │       ├── Arch_AWS-Wavelength_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Bottlerocket_64.png
        │   │       ├── Arch_Bottlerocket_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Elastic-Fabric-Adapter_64.png
        │   │       ├── Arch_Elastic-Fabric-Adapter_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_NICE-EnginFrame_64.png
        │   │       ├── Arch_NICE-EnginFrame_64.svg
        │   │       └── [email protected]
        │   ├── containers
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── Arch_Amazon-ECS-Anywhere_16.png
        │   │   │   ├── Arch_Amazon-ECS-Anywhere_16.svg
        │   │   │   ├── Arch_Amazon-EKS-Anywhere_16.png
        │   │   │   ├── Arch_Amazon-EKS-Anywhere_16.svg
        │   │   │   ├── Arch_Amazon-EKS-Cloud_16.png
        │   │   │   ├── Arch_Amazon-EKS-Cloud_16.svg
        │   │   │   ├── Arch_Amazon-EKS-Distro_16.png
        │   │   │   ├── Arch_Amazon-EKS-Distro_16.svg
        │   │   │   ├── Arch_Amazon-Elastic-Container-Registry_16.png
        │   │   │   ├── Arch_Amazon-Elastic-Container-Registry_16.svg
        │   │   │   ├── Arch_Amazon-Elastic-Container-Service_16.png
        │   │   │   ├── Arch_Amazon-Elastic-Container-Service_16.svg
        │   │   │   ├── Arch_Amazon-Elastic-Kubernetes-Service_16.png
        │   │   │   ├── Arch_Amazon-Elastic-Kubernetes-Service_16.svg
        │   │   │   ├── Arch_AWS-Fargate_16.png
        │   │   │   ├── Arch_AWS-Fargate_16.svg
        │   │   │   ├── Arch_Red-Hat-OpenShift-Service-on-AWS_16.png
        │   │   │   └── Arch_Red-Hat-OpenShift-Service-on-AWS_16.svg
        │   │   ├── 32
        │   │   │   ├── Arch_Amazon-ECS-Anywhere_32.png
        │   │   │   ├── Arch_Amazon-ECS-Anywhere_32.svg
        │   │   │   ├── Arch_Amazon-EKS-Anywhere_32.png
        │   │   │   ├── Arch_Amazon-EKS-Anywhere_32.svg
        │   │   │   ├── Arch_Amazon-EKS-Cloud_32.png
        │   │   │   ├── Arch_Amazon-EKS-Cloud_32.svg
        │   │   │   ├── Arch_Amazon-EKS-Distro_32.png
        │   │   │   ├── Arch_Amazon-EKS-Distro_32.svg
        │   │   │   ├── Arch_Amazon-Elastic-Container-Registry_32.png
        │   │   │   ├── Arch_Amazon-Elastic-Container-Registry_32.svg
        │   │   │   ├── Arch_Amazon-Elastic-Container-Service_32.png
        │   │   │   ├── Arch_Amazon-Elastic-Container-Service_32.svg
        │   │   │   ├── Arch_Amazon-Elastic-Kubernetes-Service_32.png
        │   │   │   ├── Arch_Amazon-Elastic-Kubernetes-Service_32.svg
        │   │   │   ├── Arch_AWS-Fargate_32.png
        │   │   │   ├── Arch_AWS-Fargate_32.svg
        │   │   │   ├── Arch_Red-Hat-OpenShift-Service-on-AWS_32.png
        │   │   │   └── Arch_Red-Hat-OpenShift-Service-on-AWS_32.svg
        │   │   ├── 48
        │   │   │   ├── Arch_Amazon-ECS-Anywhere_48.png
        │   │   │   ├── Arch_Amazon-ECS-Anywhere_48.svg
        │   │   │   ├── Arch_Amazon-EKS-Anywhere_48.png
        │   │   │   ├── Arch_Amazon-EKS-Anywhere_48.svg
        │   │   │   ├── Arch_Amazon-EKS-Cloud_48.png
        │   │   │   ├── Arch_Amazon-EKS-Cloud_48.svg
        │   │   │   ├── Arch_Amazon-EKS-Distro_48.png
        │   │   │   ├── Arch_Amazon-EKS-Distro_48.svg
        │   │   │   ├── Arch_Amazon-Elastic-Container-Registry_48.png
        │   │   │   ├── Arch_Amazon-Elastic-Container-Registry_48.svg
        │   │   │   ├── Arch_Amazon-Elastic-Container-Service_48.png
        │   │   │   ├── Arch_Amazon-Elastic-Container-Service_48.svg
        │   │   │   ├── Arch_Amazon-Elastic-Kubernetes-Service_48.png
        │   │   │   ├── Arch_Amazon-Elastic-Kubernetes-Service_48.svg
        │   │   │   ├── Arch_AWS-Fargate_48.png
        │   │   │   ├── Arch_AWS-Fargate_48.svg
        │   │   │   ├── Arch_Red-Hat-OpenShift-Service-on-AWS_48.png
        │   │   │   └── Arch_Red-Hat-OpenShift-Service-on-AWS_48.svg
        │   │   └── 64
        │   │       ├── Arch_Amazon-ECS-Anywhere_64.png
        │   │       ├── Arch_Amazon-ECS-Anywhere_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-EKS-Anywhere_64.png
        │   │       ├── Arch_Amazon-EKS-Anywhere_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-EKS-Cloud_64.png
        │   │       ├── Arch_Amazon-EKS-Cloud_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-EKS-Distro_64.png
        │   │       ├── Arch_Amazon-EKS-Distro_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Elastic-Container-Registry_64.png
        │   │       ├── Arch_Amazon-Elastic-Container-Registry_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Elastic-Container-Service_64.png
        │   │       ├── Arch_Amazon-Elastic-Container-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Elastic-Kubernetes-Service_64.png
        │   │       ├── Arch_Amazon-Elastic-Kubernetes-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Fargate_64.png
        │   │       ├── Arch_AWS-Fargate_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Red-Hat-OpenShift-Service-on-AWS_64.png
        │   │       ├── Arch_Red-Hat-OpenShift-Service-on-AWS_64.svg
        │   │       └── [email protected]
        │   ├── customer-enablement
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── Arch_AWS-Activate_16.png
        │   │   │   ├── Arch_AWS-Activate_16.svg
        │   │   │   ├── Arch_AWS-IQ_16.png
        │   │   │   ├── Arch_AWS-IQ_16.svg
        │   │   │   ├── Arch_AWS-Managed-Services_16.png
        │   │   │   ├── Arch_AWS-Managed-Services_16.svg
        │   │   │   ├── Arch_AWS-Professional-Services_16.png
        │   │   │   ├── Arch_AWS-Professional-Services_16.svg
        │   │   │   ├── Arch_AWS-rePost_16.png
        │   │   │   ├── Arch_AWS-rePost_16.svg
        │   │   │   ├── Arch_AWS-rePost-Private_16.png
        │   │   │   ├── Arch_AWS-rePost-Private_16.svg
        │   │   │   ├── Arch_AWS-Support_16.png
        │   │   │   ├── Arch_AWS-Support_16.svg
        │   │   │   ├── Arch_AWS-Training-Certification_16.png
        │   │   │   └── Arch_AWS-Training-Certification_16.svg
        │   │   ├── 32
        │   │   │   ├── Arch_AWS-Activate_32.png
        │   │   │   ├── Arch_AWS-Activate_32.svg
        │   │   │   ├── Arch_AWS-IQ_32.png
        │   │   │   ├── Arch_AWS-IQ_32.svg
        │   │   │   ├── Arch_AWS-Managed-Services_32.png
        │   │   │   ├── Arch_AWS-Managed-Services_32.svg
        │   │   │   ├── Arch_AWS-Professional-Services_32.png
        │   │   │   ├── Arch_AWS-Professional-Services_32.svg
        │   │   │   ├── Arch_AWS-rePost_32.png
        │   │   │   ├── Arch_AWS-rePost_32.svg
        │   │   │   ├── Arch_AWS-rePost-Private_32.png
        │   │   │   ├── Arch_AWS-rePost-Private_32.svg
        │   │   │   ├── Arch_AWS-Support_32.png
        │   │   │   ├── Arch_AWS-Support_32.svg
        │   │   │   ├── Arch_AWS-Training-Certification_32.png
        │   │   │   └── Arch_AWS-Training-Certification_32.svg
        │   │   ├── 48
        │   │   │   ├── Arch_AWS-Activate_48.png
        │   │   │   ├── Arch_AWS-Activate_48.svg
        │   │   │   ├── Arch_AWS-IQ_48.png
        │   │   │   ├── Arch_AWS-IQ_48.svg
        │   │   │   ├── Arch_AWS-Managed-Services_48.png
        │   │   │   ├── Arch_AWS-Managed-Services_48.svg
        │   │   │   ├── Arch_AWS-Professional-Services_48.png
        │   │   │   ├── Arch_AWS-Professional-Services_48.svg
        │   │   │   ├── Arch_AWS-rePost_48.png
        │   │   │   ├── Arch_AWS-rePost_48.svg
        │   │   │   ├── Arch_AWS-rePost-Private_48.png
        │   │   │   ├── Arch_AWS-rePost-Private_48.svg
        │   │   │   ├── Arch_AWS-Support_48.png
        │   │   │   ├── Arch_AWS-Support_48.svg
        │   │   │   ├── Arch_AWS-Training-Certification_48.png
        │   │   │   └── Arch_AWS-Training-Certification_48.svg
        │   │   └── 64
        │   │       ├── Arch_AWS-Activate_64.png
        │   │       ├── Arch_AWS-Activate_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IQ_64.png
        │   │       ├── Arch_AWS-IQ_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Managed-Services_64.png
        │   │       ├── Arch_AWS-Managed-Services_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Professional-Services_64.png
        │   │       ├── Arch_AWS-Professional-Services_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-rePost_64.png
        │   │       ├── Arch_AWS-rePost_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-rePost-Private_64.png
        │   │       ├── Arch_AWS-rePost-Private_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Support_64.png
        │   │       ├── Arch_AWS-Support_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Training-Certification_64.png
        │   │       ├── Arch_AWS-Training-Certification_64.svg
        │   │       └── [email protected]
        │   ├── database
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Aurora_16.png
        │   │   │   ├── Arch_Amazon-Aurora_16.svg
        │   │   │   ├── Arch_Amazon-DocumentDB_16.png
        │   │   │   ├── Arch_Amazon-DocumentDB_16.svg
        │   │   │   ├── Arch_Amazon-DynamoDB_16.png
        │   │   │   ├── Arch_Amazon-DynamoDB_16.svg
        │   │   │   ├── Arch_Amazon-ElastiCache_16.png
        │   │   │   ├── Arch_Amazon-ElastiCache_16.svg
        │   │   │   ├── Arch_Amazon-Keyspaces_16.png
        │   │   │   ├── Arch_Amazon-Keyspaces_16.svg
        │   │   │   ├── Arch_Amazon-MemoryDB_16.png
        │   │   │   ├── Arch_Amazon-MemoryDB_16.svg
        │   │   │   ├── Arch_Amazon-Neptune_16.png
        │   │   │   ├── Arch_Amazon-Neptune_16.svg
        │   │   │   ├── Arch_Amazon-RDS_16.png
        │   │   │   ├── Arch_Amazon-RDS_16.svg
        │   │   │   ├── Arch_Amazon-Timestream_16.png
        │   │   │   ├── Arch_Amazon-Timestream_16.svg
        │   │   │   ├── Arch_AWS-Database-Migration-Service_16.png
        │   │   │   ├── Arch_AWS-Database-Migration-Service_16.svg
        │   │   │   ├── Arch_Oracle-Database-at-AWS_16.png
        │   │   │   └── Arch_Oracle-Database-at-AWS_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Aurora_32.png
        │   │   │   ├── Arch_Amazon-Aurora_32.svg
        │   │   │   ├── Arch_Amazon-DocumentDB_32.png
        │   │   │   ├── Arch_Amazon-DocumentDB_32.svg
        │   │   │   ├── Arch_Amazon-DynamoDB_32.png
        │   │   │   ├── Arch_Amazon-DynamoDB_32.svg
        │   │   │   ├── Arch_Amazon-ElastiCache_32.png
        │   │   │   ├── Arch_Amazon-ElastiCache_32.svg
        │   │   │   ├── Arch_Amazon-Keyspaces_32.png
        │   │   │   ├── Arch_Amazon-Keyspaces_32.svg
        │   │   │   ├── Arch_Amazon-MemoryDB_32.png
        │   │   │   ├── Arch_Amazon-MemoryDB_32.svg
        │   │   │   ├── Arch_Amazon-Neptune_32.png
        │   │   │   ├── Arch_Amazon-Neptune_32.svg
        │   │   │   ├── Arch_Amazon-RDS_32.png
        │   │   │   ├── Arch_Amazon-RDS_32.svg
        │   │   │   ├── Arch_Amazon-Timestream_32.png
        │   │   │   ├── Arch_Amazon-Timestream_32.svg
        │   │   │   ├── Arch_AWS-Database-Migration-Service_32.png
        │   │   │   ├── Arch_AWS-Database-Migration-Service_32.svg
        │   │   │   ├── Arch_Oracle-Database-at-AWS_32.png
        │   │   │   └── Arch_Oracle-Database-at-AWS_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Aurora_48.png
        │   │   │   ├── Arch_Amazon-Aurora_48.svg
        │   │   │   ├── Arch_Amazon-DocumentDB_48.png
        │   │   │   ├── Arch_Amazon-DocumentDB_48.svg
        │   │   │   ├── Arch_Amazon-DynamoDB_48.png
        │   │   │   ├── Arch_Amazon-DynamoDB_48.svg
        │   │   │   ├── Arch_Amazon-ElastiCache_48.png
        │   │   │   ├── Arch_Amazon-ElastiCache_48.svg
        │   │   │   ├── Arch_Amazon-Keyspaces_48.png
        │   │   │   ├── Arch_Amazon-Keyspaces_48.svg
        │   │   │   ├── Arch_Amazon-MemoryDB_48.png
        │   │   │   ├── Arch_Amazon-MemoryDB_48.svg
        │   │   │   ├── Arch_Amazon-Neptune_48.png
        │   │   │   ├── Arch_Amazon-Neptune_48.svg
        │   │   │   ├── Arch_Amazon-RDS_48.png
        │   │   │   ├── Arch_Amazon-RDS_48.svg
        │   │   │   ├── Arch_Amazon-Timestream_48.png
        │   │   │   ├── Arch_Amazon-Timestream_48.svg
        │   │   │   ├── Arch_AWS-Database-Migration-Service_48.png
        │   │   │   ├── Arch_AWS-Database-Migration-Service_48.svg
        │   │   │   ├── Arch_Oracle-Database-at-AWS_48.png
        │   │   │   └── Arch_Oracle-Database-at-AWS_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Amazon-Aurora_64.png
        │   │       ├── Arch_Amazon-Aurora_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-DocumentDB_64.png
        │   │       ├── Arch_Amazon-DocumentDB_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-DynamoDB_64.png
        │   │       ├── Arch_Amazon-DynamoDB_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-ElastiCache_64.png
        │   │       ├── Arch_Amazon-ElastiCache_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Keyspaces_64.png
        │   │       ├── Arch_Amazon-Keyspaces_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-MemoryDB_64.png
        │   │       ├── Arch_Amazon-MemoryDB_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Neptune_64.png
        │   │       ├── Arch_Amazon-Neptune_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-RDS_64.png
        │   │       ├── Arch_Amazon-RDS_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Timestream_64.png
        │   │       ├── Arch_Amazon-Timestream_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Database-Migration-Service_64.png
        │   │       ├── Arch_AWS-Database-Migration-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Oracle-Database-at-AWS_64.png
        │   │       ├── Arch_Oracle-Database-at-AWS_64.svg
        │   │       └── [email protected]
        │   ├── developer-tools
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-CodeCatalyst_16.png
        │   │   │   ├── Arch_Amazon-CodeCatalyst_16.svg
        │   │   │   ├── Arch_Amazon-Corretto_16.png
        │   │   │   ├── Arch_Amazon-Corretto_16.svg
        │   │   │   ├── Arch_AWS-Cloud-Control-API_16.png
        │   │   │   ├── Arch_AWS-Cloud-Control-API_16.svg
        │   │   │   ├── Arch_AWS-Cloud-Development-Kit_16.png
        │   │   │   ├── Arch_AWS-Cloud-Development-Kit_16.svg
        │   │   │   ├── Arch_AWS-Cloud9_16.png
        │   │   │   ├── Arch_AWS-Cloud9_16.svg
        │   │   │   ├── Arch_AWS-CloudShell_16.png
        │   │   │   ├── Arch_AWS-CloudShell_16.svg
        │   │   │   ├── Arch_AWS-CodeArtifact_16.png
        │   │   │   ├── Arch_AWS-CodeArtifact_16.svg
        │   │   │   ├── Arch_AWS-CodeBuild_16.png
        │   │   │   ├── Arch_AWS-CodeBuild_16.svg
        │   │   │   ├── Arch_AWS-CodeCommit_16.png
        │   │   │   ├── Arch_AWS-CodeCommit_16.svg
        │   │   │   ├── Arch_AWS-CodeDeploy_16.png
        │   │   │   ├── Arch_AWS-CodeDeploy_16.svg
        │   │   │   ├── Arch_AWS-CodePipeline_16.png
        │   │   │   ├── Arch_AWS-CodePipeline_16.svg
        │   │   │   ├── Arch_AWS-Command-Line-Interface_16.png
        │   │   │   ├── Arch_AWS-Command-Line-Interface_16.svg
        │   │   │   ├── Arch_AWS-Fault-Injection-Service_16.png
        │   │   │   ├── Arch_AWS-Fault-Injection-Service_16.svg
        │   │   │   ├── Arch_AWS-Infrastructure-Composer_16.png
        │   │   │   ├── Arch_AWS-Infrastructure-Composer_16.svg
        │   │   │   ├── Arch_AWS-Tools-and-SDKs_16.png
        │   │   │   ├── Arch_AWS-Tools-and-SDKs_16.svg
        │   │   │   ├── Arch_AWS-X-Ray_16.png
        │   │   │   └── Arch_AWS-X-Ray_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-CodeCatalyst_32.png
        │   │   │   ├── Arch_Amazon-CodeCatalyst_32.svg
        │   │   │   ├── Arch_Amazon-Corretto_32.png
        │   │   │   ├── Arch_Amazon-Corretto_32.svg
        │   │   │   ├── Arch_AWS-Cloud-Control-API_32.png
        │   │   │   ├── Arch_AWS-Cloud-Control-API_32.svg
        │   │   │   ├── Arch_AWS-Cloud-Development-Kit_32.png
        │   │   │   ├── Arch_AWS-Cloud-Development-Kit_32.svg
        │   │   │   ├── Arch_AWS-Cloud9_32.png
        │   │   │   ├── Arch_AWS-Cloud9_32.svg
        │   │   │   ├── Arch_AWS-CloudShell_32.png
        │   │   │   ├── Arch_AWS-CloudShell_32.svg
        │   │   │   ├── Arch_AWS-CodeArtifact_32.png
        │   │   │   ├── Arch_AWS-CodeArtifact_32.svg
        │   │   │   ├── Arch_AWS-CodeBuild_32.png
        │   │   │   ├── Arch_AWS-CodeBuild_32.svg
        │   │   │   ├── Arch_AWS-CodeCommit_32.png
        │   │   │   ├── Arch_AWS-CodeCommit_32.svg
        │   │   │   ├── Arch_AWS-CodeDeploy_32.png
        │   │   │   ├── Arch_AWS-CodeDeploy_32.svg
        │   │   │   ├── Arch_AWS-CodePipeline_32.png
        │   │   │   ├── Arch_AWS-CodePipeline_32.svg
        │   │   │   ├── Arch_AWS-Command-Line-Interface_32.png
        │   │   │   ├── Arch_AWS-Command-Line-Interface_32.svg
        │   │   │   ├── Arch_AWS-Fault-Injection-Service_32.png
        │   │   │   ├── Arch_AWS-Fault-Injection-Service_32.svg
        │   │   │   ├── Arch_AWS-Infrastructure-Composer_32.png
        │   │   │   ├── Arch_AWS-Infrastructure-Composer_32.svg
        │   │   │   ├── Arch_AWS-Tools-and-SDKs_32.png
        │   │   │   ├── Arch_AWS-Tools-and-SDKs_32.svg
        │   │   │   ├── Arch_AWS-X-Ray_32.png
        │   │   │   └── Arch_AWS-X-Ray_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-CodeCatalyst_48.png
        │   │   │   ├── Arch_Amazon-CodeCatalyst_48.svg
        │   │   │   ├── Arch_Amazon-Corretto_48.png
        │   │   │   ├── Arch_Amazon-Corretto_48.svg
        │   │   │   ├── Arch_AWS-Cloud-Control-API_48.png
        │   │   │   ├── Arch_AWS-Cloud-Control-API_48.svg
        │   │   │   ├── Arch_AWS-Cloud-Development-Kit_48.png
        │   │   │   ├── Arch_AWS-Cloud-Development-Kit_48.svg
        │   │   │   ├── Arch_AWS-Cloud9_48.png
        │   │   │   ├── Arch_AWS-Cloud9_48.svg
        │   │   │   ├── Arch_AWS-CloudShell_48.png
        │   │   │   ├── Arch_AWS-CloudShell_48.svg
        │   │   │   ├── Arch_AWS-CodeArtifact_48.png
        │   │   │   ├── Arch_AWS-CodeArtifact_48.svg
        │   │   │   ├── Arch_AWS-CodeBuild_48.png
        │   │   │   ├── Arch_AWS-CodeBuild_48.svg
        │   │   │   ├── Arch_AWS-CodeCommit_48.png
        │   │   │   ├── Arch_AWS-CodeCommit_48.svg
        │   │   │   ├── Arch_AWS-CodeDeploy_48.png
        │   │   │   ├── Arch_AWS-CodeDeploy_48.svg
        │   │   │   ├── Arch_AWS-CodePipeline_48.png
        │   │   │   ├── Arch_AWS-CodePipeline_48.svg
        │   │   │   ├── Arch_AWS-Command-Line-Interface_48.png
        │   │   │   ├── Arch_AWS-Command-Line-Interface_48.svg
        │   │   │   ├── Arch_AWS-Fault-Injection-Service_48.png
        │   │   │   ├── Arch_AWS-Fault-Injection-Service_48.svg
        │   │   │   ├── Arch_AWS-Infrastructure-Composer_48.png
        │   │   │   ├── Arch_AWS-Infrastructure-Composer_48.svg
        │   │   │   ├── Arch_AWS-Tools-and-SDKs_48.png
        │   │   │   ├── Arch_AWS-Tools-and-SDKs_48.svg
        │   │   │   ├── Arch_AWS-X-Ray_48.png
        │   │   │   └── Arch_AWS-X-Ray_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Amazon-CodeCatalyst_64.png
        │   │       ├── Arch_Amazon-CodeCatalyst_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Corretto_64.png
        │   │       ├── Arch_Amazon-Corretto_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Cloud-Control-API_64.png
        │   │       ├── Arch_AWS-Cloud-Control-API_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Cloud-Development-Kit_64.png
        │   │       ├── Arch_AWS-Cloud-Development-Kit_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Cloud9_64.png
        │   │       ├── Arch_AWS-Cloud9_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-CloudShell_64.png
        │   │       ├── Arch_AWS-CloudShell_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-CodeArtifact_64.png
        │   │       ├── Arch_AWS-CodeArtifact_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-CodeBuild_64.png
        │   │       ├── Arch_AWS-CodeBuild_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-CodeCommit_64.png
        │   │       ├── Arch_AWS-CodeCommit_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-CodeDeploy_64.png
        │   │       ├── Arch_AWS-CodeDeploy_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-CodePipeline_64.png
        │   │       ├── Arch_AWS-CodePipeline_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Command-Line-Interface_64.png
        │   │       ├── Arch_AWS-Command-Line-Interface_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Fault-Injection-Service_64.png
        │   │       ├── Arch_AWS-Fault-Injection-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Infrastructure-Composer_64.png
        │   │       ├── Arch_AWS-Infrastructure-Composer_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Tools-and-SDKs_64.png
        │   │       ├── Arch_AWS-Tools-and-SDKs_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-X-Ray_64.png
        │   │       ├── Arch_AWS-X-Ray_64.svg
        │   │       └── [email protected]
        │   ├── end-user-computing
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-AppStream-2_16.png
        │   │   │   ├── Arch_Amazon-AppStream-2_16.svg
        │   │   │   ├── Arch_Amazon-WorkSpaces-Family_16.png
        │   │   │   └── Arch_Amazon-WorkSpaces-Family_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-AppStream-2_32.png
        │   │   │   ├── Arch_Amazon-AppStream-2_32.svg
        │   │   │   ├── Arch_Amazon-WorkSpaces-Family_32.png
        │   │   │   └── Arch_Amazon-WorkSpaces-Family_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-AppStream-2_48.png
        │   │   │   ├── Arch_Amazon-AppStream-2_48.svg
        │   │   │   ├── Arch_Amazon-WorkSpaces-Family_48.png
        │   │   │   └── Arch_Amazon-WorkSpaces-Family_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Amazon-AppStream-2_64.png
        │   │       ├── Arch_Amazon-AppStream-2_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-WorkSpaces-Family_64.png
        │   │       ├── Arch_Amazon-WorkSpaces-Family_64.svg
        │   │       └── [email protected]
        │   ├── front-end-web-mobile
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── Arch_Amazon-Location-Service_16.png
        │   │   │   ├── Arch_Amazon-Location-Service_16.svg
        │   │   │   ├── Arch_AWS-Amplify_16.png
        │   │   │   ├── Arch_AWS-Amplify_16.svg
        │   │   │   ├── Arch_AWS-Device-Farm_16.png
        │   │   │   └── Arch_AWS-Device-Farm_16.svg
        │   │   ├── 32
        │   │   │   ├── Arch_Amazon-Location-Service_32.png
        │   │   │   ├── Arch_Amazon-Location-Service_32.svg
        │   │   │   ├── Arch_AWS-Amplify_32.png
        │   │   │   ├── Arch_AWS-Amplify_32.svg
        │   │   │   ├── Arch_AWS-Device-Farm_32.png
        │   │   │   └── Arch_AWS-Device-Farm_32.svg
        │   │   ├── 48
        │   │   │   ├── Arch_Amazon-Location-Service_48.png
        │   │   │   ├── Arch_Amazon-Location-Service_48.svg
        │   │   │   ├── Arch_AWS-Amplify_48.png
        │   │   │   ├── Arch_AWS-Amplify_48.svg
        │   │   │   ├── Arch_AWS-Device-Farm_48.png
        │   │   │   └── Arch_AWS-Device-Farm_48.svg
        │   │   └── 64
        │   │       ├── Arch_Amazon-Location-Service_64.png
        │   │       ├── Arch_Amazon-Location-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Amplify_64.png
        │   │       ├── Arch_AWS-Amplify_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Device-Farm_64.png
        │   │       ├── Arch_AWS-Device-Farm_64.svg
        │   │       └── [email protected]
        │   ├── games
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-GameLift-Servers_16.png
        │   │   │   ├── Arch_Amazon-GameLift-Servers_16.svg
        │   │   │   ├── Arch_Amazon-GameLift-Streams_16.png
        │   │   │   ├── Arch_Amazon-GameLift-Streams_16.svg
        │   │   │   ├── Arch_Open-3D-Engine_16.png
        │   │   │   └── Arch_Open-3D-Engine_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-GameLift-Servers_32.png
        │   │   │   ├── Arch_Amazon-GameLift-Servers_32.svg
        │   │   │   ├── Arch_Amazon-GameLift-Streams_32.png
        │   │   │   ├── Arch_Amazon-GameLift-Streams_32.svg
        │   │   │   ├── Arch_Open-3D-Engine_32.png
        │   │   │   └── Arch_Open-3D-Engine_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-GameLift-Servers_48.png
        │   │   │   ├── Arch_Amazon-GameLift-Servers_48.svg
        │   │   │   ├── Arch_Amazon-GameLift-Streams_48.png
        │   │   │   ├── Arch_Amazon-GameLift-Streams_48.svg
        │   │   │   ├── Arch_Open-3D-Engine_48.png
        │   │   │   └── Arch_Open-3D-Engine_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Amazon-GameLift-Servers_64.png
        │   │       ├── Arch_Amazon-GameLift-Servers_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-GameLift-Streams_64.png
        │   │       ├── Arch_Amazon-GameLift-Streams_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Open-3D-Engine_64.png
        │   │       ├── Arch_Open-3D-Engine_64.svg
        │   │       └── [email protected]
        │   ├── general-icons
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── Arch_AWS-Marketplace_Dark_16.png
        │   │   │   ├── Arch_AWS-Marketplace_Dark_16.svg
        │   │   │   ├── Arch_AWS-Marketplace_Light_16.png
        │   │   │   └── Arch_AWS-Marketplace_Light_16.svg
        │   │   ├── 32
        │   │   │   ├── Arch_AWS-Marketplace_Dark_32.png
        │   │   │   ├── Arch_AWS-Marketplace_Dark_32.svg
        │   │   │   ├── Arch_AWS-Marketplace_Light_32.png
        │   │   │   └── Arch_AWS-Marketplace_Light_32.svg
        │   │   ├── 48
        │   │   │   ├── Arch_AWS-Marketplace_Dark_48.png
        │   │   │   ├── Arch_AWS-Marketplace_Dark_48.svg
        │   │   │   ├── Arch_AWS-Marketplace_Light_48.png
        │   │   │   └── Arch_AWS-Marketplace_Light_48.svg
        │   │   └── 64
        │   │       ├── Arch_AWS-Marketplace_Dark_64.png
        │   │       ├── Arch_AWS-Marketplace_Dark_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Marketplace_Light_64.png
        │   │       ├── Arch_AWS-Marketplace_Light_64.svg
        │   │       └── [email protected]
        │   ├── internet-of-things
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_AWS-IoT-Analytics_16.png
        │   │   │   ├── Arch_AWS-IoT-Analytics_16.svg
        │   │   │   ├── Arch_AWS-IoT-Button_16.png
        │   │   │   ├── Arch_AWS-IoT-Button_16.svg
        │   │   │   ├── Arch_AWS-IoT-Core_16.png
        │   │   │   ├── Arch_AWS-IoT-Core_16.svg
        │   │   │   ├── Arch_AWS-IoT-Device-Defender_16.png
        │   │   │   ├── Arch_AWS-IoT-Device-Defender_16.svg
        │   │   │   ├── Arch_AWS-IoT-Device-Management_16.png
        │   │   │   ├── Arch_AWS-IoT-Device-Management_16.svg
        │   │   │   ├── Arch_AWS-IoT-Events_16.png
        │   │   │   ├── Arch_AWS-IoT-Events_16.svg
        │   │   │   ├── Arch_AWS-IoT-ExpressLink_16.png
        │   │   │   ├── Arch_AWS-IoT-ExpressLink_16.svg
        │   │   │   ├── Arch_AWS-IoT-FleetWise_16.png
        │   │   │   ├── Arch_AWS-IoT-FleetWise_16.svg
        │   │   │   ├── Arch_AWS-IoT-Greengrass_16.png
        │   │   │   ├── Arch_AWS-IoT-Greengrass_16.svg
        │   │   │   ├── Arch_AWS-IoT-SiteWise_16.png
        │   │   │   ├── Arch_AWS-IoT-SiteWise_16.svg
        │   │   │   ├── Arch_AWS-IoT-TwinMaker_16.png
        │   │   │   ├── Arch_AWS-IoT-TwinMaker_16.svg
        │   │   │   ├── Arch_FreeRTOS_16.png
        │   │   │   └── Arch_FreeRTOS_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_AWS-IoT-Analytics_32.png
        │   │   │   ├── Arch_AWS-IoT-Analytics_32.svg
        │   │   │   ├── Arch_AWS-IoT-Button_32.png
        │   │   │   ├── Arch_AWS-IoT-Button_32.svg
        │   │   │   ├── Arch_AWS-IoT-Core_32.png
        │   │   │   ├── Arch_AWS-IoT-Core_32.svg
        │   │   │   ├── Arch_AWS-IoT-Device-Defender_32.png
        │   │   │   ├── Arch_AWS-IoT-Device-Defender_32.svg
        │   │   │   ├── Arch_AWS-IoT-Device-Management_32.png
        │   │   │   ├── Arch_AWS-IoT-Device-Management_32.svg
        │   │   │   ├── Arch_AWS-IoT-Events_32.png
        │   │   │   ├── Arch_AWS-IoT-Events_32.svg
        │   │   │   ├── Arch_AWS-IoT-ExpressLink_32.png
        │   │   │   ├── Arch_AWS-IoT-ExpressLink_32.svg
        │   │   │   ├── Arch_AWS-IoT-FleetWise_32.png
        │   │   │   ├── Arch_AWS-IoT-FleetWise_32.svg
        │   │   │   ├── Arch_AWS-IoT-Greengrass_32.png
        │   │   │   ├── Arch_AWS-IoT-Greengrass_32.svg
        │   │   │   ├── Arch_AWS-IoT-SiteWise_32.png
        │   │   │   ├── Arch_AWS-IoT-SiteWise_32.svg
        │   │   │   ├── Arch_AWS-IoT-TwinMaker_32.png
        │   │   │   ├── Arch_AWS-IoT-TwinMaker_32.svg
        │   │   │   ├── Arch_FreeRTOS_32.png
        │   │   │   └── Arch_FreeRTOS_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_AWS-IoT-Analytics_48.png
        │   │   │   ├── Arch_AWS-IoT-Analytics_48.svg
        │   │   │   ├── Arch_AWS-IoT-Button_48.png
        │   │   │   ├── Arch_AWS-IoT-Button_48.svg
        │   │   │   ├── Arch_AWS-IoT-Core_48.png
        │   │   │   ├── Arch_AWS-IoT-Core_48.svg
        │   │   │   ├── Arch_AWS-IoT-Device-Defender_48.png
        │   │   │   ├── Arch_AWS-IoT-Device-Defender_48.svg
        │   │   │   ├── Arch_AWS-IoT-Device-Management_48.png
        │   │   │   ├── Arch_AWS-IoT-Device-Management_48.svg
        │   │   │   ├── Arch_AWS-IoT-Events_48.png
        │   │   │   ├── Arch_AWS-IoT-Events_48.svg
        │   │   │   ├── Arch_AWS-IoT-ExpressLink_48.png
        │   │   │   ├── Arch_AWS-IoT-ExpressLink_48.svg
        │   │   │   ├── Arch_AWS-IoT-FleetWise_48.png
        │   │   │   ├── Arch_AWS-IoT-FleetWise_48.svg
        │   │   │   ├── Arch_AWS-IoT-Greengrass_48.png
        │   │   │   ├── Arch_AWS-IoT-Greengrass_48.svg
        │   │   │   ├── Arch_AWS-IoT-SiteWise_48.png
        │   │   │   ├── Arch_AWS-IoT-SiteWise_48.svg
        │   │   │   ├── Arch_AWS-IoT-TwinMaker_48.png
        │   │   │   ├── Arch_AWS-IoT-TwinMaker_48.svg
        │   │   │   ├── Arch_FreeRTOS_48.png
        │   │   │   └── Arch_FreeRTOS_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_AWS-IoT-Analytics_64.png
        │   │       ├── Arch_AWS-IoT-Analytics_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IoT-Button_64.png
        │   │       ├── Arch_AWS-IoT-Button_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IoT-Core_64.png
        │   │       ├── Arch_AWS-IoT-Core_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IoT-Device-Defender_64.png
        │   │       ├── Arch_AWS-IoT-Device-Defender_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IoT-Device-Management_64.png
        │   │       ├── Arch_AWS-IoT-Device-Management_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IoT-Events_64.png
        │   │       ├── Arch_AWS-IoT-Events_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IoT-ExpressLink_64.png
        │   │       ├── Arch_AWS-IoT-ExpressLink_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IoT-FleetWise_64.png
        │   │       ├── Arch_AWS-IoT-FleetWise_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IoT-Greengrass_64.png
        │   │       ├── Arch_AWS-IoT-Greengrass_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IoT-SiteWise_64.png
        │   │       ├── Arch_AWS-IoT-SiteWise_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IoT-TwinMaker_64.png
        │   │       ├── Arch_AWS-IoT-TwinMaker_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_FreeRTOS_64.png
        │   │       ├── Arch_FreeRTOS_64.svg
        │   │       └── [email protected]
        │   ├── management-governance
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-CloudWatch_16.png
        │   │   │   ├── Arch_Amazon-CloudWatch_16.svg
        │   │   │   ├── Arch_Amazon-Managed-Grafana_16.png
        │   │   │   ├── Arch_Amazon-Managed-Grafana_16.svg
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Prometheus_16.png
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Prometheus_16.svg
        │   │   │   ├── Arch_AWS-AppConfig_16.png
        │   │   │   ├── Arch_AWS-AppConfig_16.svg
        │   │   │   ├── Arch_AWS-Application-Auto-Scaling_16.png
        │   │   │   ├── Arch_AWS-Application-Auto-Scaling_16.svg
        │   │   │   ├── Arch_AWS-Auto-Scaling_16.png
        │   │   │   ├── Arch_AWS-Auto-Scaling_16.svg
        │   │   │   ├── Arch_AWS-Backint-Agent_16.png
        │   │   │   ├── Arch_AWS-Backint-Agent_16.svg
        │   │   │   ├── Arch_AWS-Chatbot_16.png
        │   │   │   ├── Arch_AWS-Chatbot_16.svg
        │   │   │   ├── Arch_AWS-CloudFormation_16.png
        │   │   │   ├── Arch_AWS-CloudFormation_16.svg
        │   │   │   ├── Arch_AWS-CloudTrail_16.png
        │   │   │   ├── Arch_AWS-CloudTrail_16.svg
        │   │   │   ├── Arch_AWS-Compute-Optimizer_16.png
        │   │   │   ├── Arch_AWS-Compute-Optimizer_16.svg
        │   │   │   ├── Arch_AWS-Config_16.png
        │   │   │   ├── Arch_AWS-Config_16.svg
        │   │   │   ├── Arch_AWS-Console-Mobile-Application_16.png
        │   │   │   ├── Arch_AWS-Console-Mobile-Application_16.svg
        │   │   │   ├── Arch_AWS-Control-Tower_16.png
        │   │   │   ├── Arch_AWS-Control-Tower_16.svg
        │   │   │   ├── Arch_AWS-Distro-for-OpenTelemetry_16.png
        │   │   │   ├── Arch_AWS-Distro-for-OpenTelemetry_16.svg
        │   │   │   ├── Arch_AWS-Health-Dashboard_16.png
        │   │   │   ├── Arch_AWS-Health-Dashboard_16.svg
        │   │   │   ├── Arch_AWS-Launch-Wizard_16.png
        │   │   │   ├── Arch_AWS-Launch-Wizard_16.svg
        │   │   │   ├── Arch_AWS-License-Manager_16.png
        │   │   │   ├── Arch_AWS-License-Manager_16.svg
        │   │   │   ├── Arch_AWS-Management-Console_16.png
        │   │   │   ├── Arch_AWS-Management-Console_16.svg
        │   │   │   ├── Arch_AWS-Organizations_16.png
        │   │   │   ├── Arch_AWS-Organizations_16.svg
        │   │   │   ├── Arch_AWS-Proton_16.png
        │   │   │   ├── Arch_AWS-Proton_16.svg
        │   │   │   ├── Arch_AWS-Resilience-Hub_16.png
        │   │   │   ├── Arch_AWS-Resilience-Hub_16.svg
        │   │   │   ├── Arch_AWS-Resource-Explorer_16.png
        │   │   │   ├── Arch_AWS-Resource-Explorer_16.svg
        │   │   │   ├── Arch_AWS-Service-Catalog_16.png
        │   │   │   ├── Arch_AWS-Service-Catalog_16.svg
        │   │   │   ├── Arch_AWS-Service-Management-Connector_16.png
        │   │   │   ├── Arch_AWS-Service-Management-Connector_16.svg
        │   │   │   ├── Arch_AWS-Systems-Manager_16.png
        │   │   │   ├── Arch_AWS-Systems-Manager_16.svg
        │   │   │   ├── Arch_AWS-Telco-Network-Builder_16.png
        │   │   │   ├── Arch_AWS-Telco-Network-Builder_16.svg
        │   │   │   ├── Arch_AWS-Trusted-Advisor_16.png
        │   │   │   ├── Arch_AWS-Trusted-Advisor_16.svg
        │   │   │   ├── Arch_AWS-User-Notifications_16.png
        │   │   │   ├── Arch_AWS-User-Notifications_16.svg
        │   │   │   ├── Arch_AWS-Well-Architected-Tool_16.png
        │   │   │   └── Arch_AWS-Well-Architected-Tool_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-CloudWatch_32.png
        │   │   │   ├── Arch_Amazon-CloudWatch_32.svg
        │   │   │   ├── Arch_Amazon-Managed-Grafana_32.png
        │   │   │   ├── Arch_Amazon-Managed-Grafana_32.svg
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Prometheus_32.png
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Prometheus_32.svg
        │   │   │   ├── Arch_AWS-AppConfig_32.png
        │   │   │   ├── Arch_AWS-AppConfig_32.svg
        │   │   │   ├── Arch_AWS-Application-Auto-Scaling_32.png
        │   │   │   ├── Arch_AWS-Application-Auto-Scaling_32.svg
        │   │   │   ├── Arch_AWS-Auto-Scaling_32.png
        │   │   │   ├── Arch_AWS-Auto-Scaling_32.svg
        │   │   │   ├── Arch_AWS-Backint-Agent_32.png
        │   │   │   ├── Arch_AWS-Backint-Agent_32.svg
        │   │   │   ├── Arch_AWS-Chatbot_32.png
        │   │   │   ├── Arch_AWS-Chatbot_32.svg
        │   │   │   ├── Arch_AWS-CloudFormation_32.png
        │   │   │   ├── Arch_AWS-CloudFormation_32.svg
        │   │   │   ├── Arch_AWS-CloudTrail_32.png
        │   │   │   ├── Arch_AWS-CloudTrail_32.svg
        │   │   │   ├── Arch_AWS-Compute-Optimizer_32.png
        │   │   │   ├── Arch_AWS-Compute-Optimizer_32.svg
        │   │   │   ├── Arch_AWS-Config_32.png
        │   │   │   ├── Arch_AWS-Config_32.svg
        │   │   │   ├── Arch_AWS-Console-Mobile-Application_32.png
        │   │   │   ├── Arch_AWS-Console-Mobile-Application_32.svg
        │   │   │   ├── Arch_AWS-Control-Tower_32.png
        │   │   │   ├── Arch_AWS-Control-Tower_32.svg
        │   │   │   ├── Arch_AWS-Distro-for-OpenTelemetry_32.png
        │   │   │   ├── Arch_AWS-Distro-for-OpenTelemetry_32.svg
        │   │   │   ├── Arch_AWS-Health-Dashboard_32.png
        │   │   │   ├── Arch_AWS-Health-Dashboard_32.svg
        │   │   │   ├── Arch_AWS-Launch-Wizard_32.png
        │   │   │   ├── Arch_AWS-Launch-Wizard_32.svg
        │   │   │   ├── Arch_AWS-License-Manager_32.png
        │   │   │   ├── Arch_AWS-License-Manager_32.svg
        │   │   │   ├── Arch_AWS-Management-Console_32.png
        │   │   │   ├── Arch_AWS-Management-Console_32.svg
        │   │   │   ├── Arch_AWS-Organizations_32.png
        │   │   │   ├── Arch_AWS-Organizations_32.svg
        │   │   │   ├── Arch_AWS-Proton_32.png
        │   │   │   ├── Arch_AWS-Proton_32.svg
        │   │   │   ├── Arch_AWS-Resilience-Hub_32.png
        │   │   │   ├── Arch_AWS-Resilience-Hub_32.svg
        │   │   │   ├── Arch_AWS-Resource-Explorer_32.png
        │   │   │   ├── Arch_AWS-Resource-Explorer_32.svg
        │   │   │   ├── Arch_AWS-Service-Catalog_32.png
        │   │   │   ├── Arch_AWS-Service-Catalog_32.svg
        │   │   │   ├── Arch_AWS-Service-Management-Connector_32.png
        │   │   │   ├── Arch_AWS-Service-Management-Connector_32.svg
        │   │   │   ├── Arch_AWS-Systems-Manager_32.png
        │   │   │   ├── Arch_AWS-Systems-Manager_32.svg
        │   │   │   ├── Arch_AWS-Telco-Network-Builder_32.png
        │   │   │   ├── Arch_AWS-Telco-Network-Builder_32.svg
        │   │   │   ├── Arch_AWS-Trusted-Advisor_32.png
        │   │   │   ├── Arch_AWS-Trusted-Advisor_32.svg
        │   │   │   ├── Arch_AWS-User-Notifications_32.png
        │   │   │   ├── Arch_AWS-User-Notifications_32.svg
        │   │   │   ├── Arch_AWS-Well-Architected-Tool_32.png
        │   │   │   └── Arch_AWS-Well-Architected-Tool_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-CloudWatch_48.png
        │   │   │   ├── Arch_Amazon-CloudWatch_48.svg
        │   │   │   ├── Arch_Amazon-Managed-Grafana_48.png
        │   │   │   ├── Arch_Amazon-Managed-Grafana_48.svg
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Prometheus_48.png
        │   │   │   ├── Arch_Amazon-Managed-Service-for-Prometheus_48.svg
        │   │   │   ├── Arch_AWS-AppConfig_48.png
        │   │   │   ├── Arch_AWS-AppConfig_48.svg
        │   │   │   ├── Arch_AWS-Application-Auto-Scaling_48.png
        │   │   │   ├── Arch_AWS-Application-Auto-Scaling_48.svg
        │   │   │   ├── Arch_AWS-Auto-Scaling_48.png
        │   │   │   ├── Arch_AWS-Auto-Scaling_48.svg
        │   │   │   ├── Arch_AWS-Backint-Agent_48.png
        │   │   │   ├── Arch_AWS-Backint-Agent_48.svg
        │   │   │   ├── Arch_AWS-Chatbot_48.png
        │   │   │   ├── Arch_AWS-Chatbot_48.svg
        │   │   │   ├── Arch_AWS-CloudFormation_48.png
        │   │   │   ├── Arch_AWS-CloudFormation_48.svg
        │   │   │   ├── Arch_AWS-CloudTrail_48.png
        │   │   │   ├── Arch_AWS-CloudTrail_48.svg
        │   │   │   ├── Arch_AWS-Compute-Optimizer_48.png
        │   │   │   ├── Arch_AWS-Compute-Optimizer_48.svg
        │   │   │   ├── Arch_AWS-Config_48.png
        │   │   │   ├── Arch_AWS-Config_48.svg
        │   │   │   ├── Arch_AWS-Console-Mobile-Application_48.png
        │   │   │   ├── Arch_AWS-Console-Mobile-Application_48.svg
        │   │   │   ├── Arch_AWS-Control-Tower_48.png
        │   │   │   ├── Arch_AWS-Control-Tower_48.svg
        │   │   │   ├── Arch_AWS-Distro-for-OpenTelemetry_48.png
        │   │   │   ├── Arch_AWS-Distro-for-OpenTelemetry_48.svg
        │   │   │   ├── Arch_AWS-Health-Dashboard_48.png
        │   │   │   ├── Arch_AWS-Health-Dashboard_48.svg
        │   │   │   ├── Arch_AWS-Launch-Wizard_48.png
        │   │   │   ├── Arch_AWS-Launch-Wizard_48.svg
        │   │   │   ├── Arch_AWS-License-Manager_48.png
        │   │   │   ├── Arch_AWS-License-Manager_48.svg
        │   │   │   ├── Arch_AWS-Management-Console_48.png
        │   │   │   ├── Arch_AWS-Management-Console_48.svg
        │   │   │   ├── Arch_AWS-Organizations_48.png
        │   │   │   ├── Arch_AWS-Organizations_48.svg
        │   │   │   ├── Arch_AWS-Proton_48.png
        │   │   │   ├── Arch_AWS-Proton_48.svg
        │   │   │   ├── Arch_AWS-Resilience-Hub_48.png
        │   │   │   ├── Arch_AWS-Resilience-Hub_48.svg
        │   │   │   ├── Arch_AWS-Resource-Explorer_48.png
        │   │   │   ├── Arch_AWS-Resource-Explorer_48.svg
        │   │   │   ├── Arch_AWS-Service-Catalog_48.png
        │   │   │   ├── Arch_AWS-Service-Catalog_48.svg
        │   │   │   ├── Arch_AWS-Service-Management-Connector_48.png
        │   │   │   ├── Arch_AWS-Service-Management-Connector_48.svg
        │   │   │   ├── Arch_AWS-Systems-Manager_48.png
        │   │   │   ├── Arch_AWS-Systems-Manager_48.svg
        │   │   │   ├── Arch_AWS-Telco-Network-Builder_48.png
        │   │   │   ├── Arch_AWS-Telco-Network-Builder_48.svg
        │   │   │   ├── Arch_AWS-Trusted-Advisor_48.png
        │   │   │   ├── Arch_AWS-Trusted-Advisor_48.svg
        │   │   │   ├── Arch_AWS-User-Notifications_48.png
        │   │   │   ├── Arch_AWS-User-Notifications_48.svg
        │   │   │   ├── Arch_AWS-Well-Architected-Tool_48.png
        │   │   │   └── Arch_AWS-Well-Architected-Tool_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Amazon-CloudWatch_64.png
        │   │       ├── Arch_Amazon-CloudWatch_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Managed-Grafana_64.png
        │   │       ├── Arch_Amazon-Managed-Grafana_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Managed-Service-for-Prometheus_64.png
        │   │       ├── Arch_Amazon-Managed-Service-for-Prometheus_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-AppConfig_64.png
        │   │       ├── Arch_AWS-AppConfig_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Application-Auto-Scaling_64.png
        │   │       ├── Arch_AWS-Application-Auto-Scaling_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Auto-Scaling_64.png
        │   │       ├── Arch_AWS-Auto-Scaling_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Backint-Agent_64.png
        │   │       ├── Arch_AWS-Backint-Agent_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Chatbot_64.png
        │   │       ├── Arch_AWS-Chatbot_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-CloudFormation_64.png
        │   │       ├── Arch_AWS-CloudFormation_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-CloudTrail_64.png
        │   │       ├── Arch_AWS-CloudTrail_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Compute-Optimizer_64.png
        │   │       ├── Arch_AWS-Compute-Optimizer_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Config_64.png
        │   │       ├── Arch_AWS-Config_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Console-Mobile-Application_64.png
        │   │       ├── Arch_AWS-Console-Mobile-Application_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Control-Tower_64.png
        │   │       ├── Arch_AWS-Control-Tower_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Distro-for-OpenTelemetry_64.png
        │   │       ├── Arch_AWS-Distro-for-OpenTelemetry_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Health-Dashboard_64.png
        │   │       ├── Arch_AWS-Health-Dashboard_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Launch-Wizard_64.png
        │   │       ├── Arch_AWS-Launch-Wizard_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-License-Manager_64.png
        │   │       ├── Arch_AWS-License-Manager_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Management-Console_64.png
        │   │       ├── Arch_AWS-Management-Console_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Organizations_64.png
        │   │       ├── Arch_AWS-Organizations_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Proton_64.png
        │   │       ├── Arch_AWS-Proton_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Resilience-Hub_64.png
        │   │       ├── Arch_AWS-Resilience-Hub_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Resource-Explorer_64.png
        │   │       ├── Arch_AWS-Resource-Explorer_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Service-Catalog_64.png
        │   │       ├── Arch_AWS-Service-Catalog_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Service-Management-Connector_64.png
        │   │       ├── Arch_AWS-Service-Management-Connector_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Systems-Manager_64.png
        │   │       ├── Arch_AWS-Systems-Manager_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Telco-Network-Builder_64.png
        │   │       ├── Arch_AWS-Telco-Network-Builder_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Trusted-Advisor_64.png
        │   │       ├── Arch_AWS-Trusted-Advisor_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-User-Notifications_64.png
        │   │       ├── Arch_AWS-User-Notifications_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Well-Architected-Tool_64.png
        │   │       ├── Arch_AWS-Well-Architected-Tool_64.svg
        │   │       └── [email protected]
        │   ├── media-services
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Elastic-Transcoder_16.png
        │   │   │   ├── Arch_Amazon-Elastic-Transcoder_16.svg
        │   │   │   ├── Arch_Amazon-Interactive-Video-Service_16.png
        │   │   │   ├── Arch_Amazon-Interactive-Video-Service_16.svg
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_16.png
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_16.svg
        │   │   │   ├── Arch_AWS-Deadline-Cloud_16.png
        │   │   │   ├── Arch_AWS-Deadline-Cloud_16.svg
        │   │   │   ├── Arch_AWS-Elemental-Appliances-&-Software_16.png
        │   │   │   ├── Arch_AWS-Elemental-Appliances-&-Software_16.svg
        │   │   │   ├── Arch_AWS-Elemental-Conductor_16.png
        │   │   │   ├── Arch_AWS-Elemental-Conductor_16.svg
        │   │   │   ├── Arch_AWS-Elemental-Delta_16.png
        │   │   │   ├── Arch_AWS-Elemental-Delta_16.svg
        │   │   │   ├── Arch_AWS-Elemental-Link_16.png
        │   │   │   ├── Arch_AWS-Elemental-Link_16.svg
        │   │   │   ├── Arch_AWS-Elemental-Live_16.png
        │   │   │   ├── Arch_AWS-Elemental-Live_16.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaConnect_16.png
        │   │   │   ├── Arch_AWS-Elemental-MediaConnect_16.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaConvert_16.png
        │   │   │   ├── Arch_AWS-Elemental-MediaConvert_16.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaLive_16.png
        │   │   │   ├── Arch_AWS-Elemental-MediaLive_16.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaPackage_16.png
        │   │   │   ├── Arch_AWS-Elemental-MediaPackage_16.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaStore_16.png
        │   │   │   ├── Arch_AWS-Elemental-MediaStore_16.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaTailor_16.png
        │   │   │   ├── Arch_AWS-Elemental-MediaTailor_16.svg
        │   │   │   ├── Arch_AWS-Elemental-Server_16.png
        │   │   │   ├── Arch_AWS-Elemental-Server_16.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Deadline_16.png
        │   │   │   ├── Arch_AWS-Thinkbox-Deadline_16.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Frost_16.png
        │   │   │   ├── Arch_AWS-Thinkbox-Frost_16.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Krakatoa_16.png
        │   │   │   ├── Arch_AWS-Thinkbox-Krakatoa_16.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Sequoia_16.png
        │   │   │   ├── Arch_AWS-Thinkbox-Sequoia_16.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Stoke_16.png
        │   │   │   ├── Arch_AWS-Thinkbox-Stoke_16.svg
        │   │   │   ├── Arch_AWS-Thinkbox-XMesh_16.png
        │   │   │   └── Arch_AWS-Thinkbox-XMesh_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Elastic-Transcoder_32.png
        │   │   │   ├── Arch_Amazon-Elastic-Transcoder_32.svg
        │   │   │   ├── Arch_Amazon-Interactive-Video-Service_32.png
        │   │   │   ├── Arch_Amazon-Interactive-Video-Service_32.svg
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_32.png
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_32.svg
        │   │   │   ├── Arch_AWS-Deadline-Cloud_32.png
        │   │   │   ├── Arch_AWS-Deadline-Cloud_32.svg
        │   │   │   ├── Arch_AWS-Elemental-Appliances-&-Software_32.png
        │   │   │   ├── Arch_AWS-Elemental-Appliances-&-Software_32.svg
        │   │   │   ├── Arch_AWS-Elemental-Conductor_32.png
        │   │   │   ├── Arch_AWS-Elemental-Conductor_32.svg
        │   │   │   ├── Arch_AWS-Elemental-Delta_32.png
        │   │   │   ├── Arch_AWS-Elemental-Delta_32.svg
        │   │   │   ├── Arch_AWS-Elemental-Link_32.png
        │   │   │   ├── Arch_AWS-Elemental-Link_32.svg
        │   │   │   ├── Arch_AWS-Elemental-Live_32.png
        │   │   │   ├── Arch_AWS-Elemental-Live_32.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaConnect_32.png
        │   │   │   ├── Arch_AWS-Elemental-MediaConnect_32.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaConvert_32.png
        │   │   │   ├── Arch_AWS-Elemental-MediaConvert_32.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaLive_32.png
        │   │   │   ├── Arch_AWS-Elemental-MediaLive_32.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaPackage_32.png
        │   │   │   ├── Arch_AWS-Elemental-MediaPackage_32.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaStore_32.png
        │   │   │   ├── Arch_AWS-Elemental-MediaStore_32.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaTailor_32.png
        │   │   │   ├── Arch_AWS-Elemental-MediaTailor_32.svg
        │   │   │   ├── Arch_AWS-Elemental-Server_32.png
        │   │   │   ├── Arch_AWS-Elemental-Server_32.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Deadline_32.png
        │   │   │   ├── Arch_AWS-Thinkbox-Deadline_32.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Frost_32.png
        │   │   │   ├── Arch_AWS-Thinkbox-Frost_32.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Krakatoa_32.png
        │   │   │   ├── Arch_AWS-Thinkbox-Krakatoa_32.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Sequoia_32.png
        │   │   │   ├── Arch_AWS-Thinkbox-Sequoia_32.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Stoke_32.png
        │   │   │   ├── Arch_AWS-Thinkbox-Stoke_32.svg
        │   │   │   ├── Arch_AWS-Thinkbox-XMesh_32.png
        │   │   │   └── Arch_AWS-Thinkbox-XMesh_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-Elastic-Transcoder_48.png
        │   │   │   ├── Arch_Amazon-Elastic-Transcoder_48.svg
        │   │   │   ├── Arch_Amazon-Interactive-Video-Service_48.png
        │   │   │   ├── Arch_Amazon-Interactive-Video-Service_48.svg
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_48.png
        │   │   │   ├── Arch_Amazon-Kinesis-Video-Streams_48.svg
        │   │   │   ├── Arch_AWS-Deadline-Cloud_48.png
        │   │   │   ├── Arch_AWS-Deadline-Cloud_48.svg
        │   │   │   ├── Arch_AWS-Elemental-Appliances-&-Software_48.png
        │   │   │   ├── Arch_AWS-Elemental-Appliances-&-Software_48.svg
        │   │   │   ├── Arch_AWS-Elemental-Conductor_48.png
        │   │   │   ├── Arch_AWS-Elemental-Conductor_48.svg
        │   │   │   ├── Arch_AWS-Elemental-Delta_48.png
        │   │   │   ├── Arch_AWS-Elemental-Delta_48.svg
        │   │   │   ├── Arch_AWS-Elemental-Link_48.png
        │   │   │   ├── Arch_AWS-Elemental-Link_48.svg
        │   │   │   ├── Arch_AWS-Elemental-Live_48.png
        │   │   │   ├── Arch_AWS-Elemental-Live_48.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaConnect_48.png
        │   │   │   ├── Arch_AWS-Elemental-MediaConnect_48.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaConvert_48.png
        │   │   │   ├── Arch_AWS-Elemental-MediaConvert_48.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaLive_48.png
        │   │   │   ├── Arch_AWS-Elemental-MediaLive_48.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaPackage_48.png
        │   │   │   ├── Arch_AWS-Elemental-MediaPackage_48.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaStore_48.png
        │   │   │   ├── Arch_AWS-Elemental-MediaStore_48.svg
        │   │   │   ├── Arch_AWS-Elemental-MediaTailor_48.png
        │   │   │   ├── Arch_AWS-Elemental-MediaTailor_48.svg
        │   │   │   ├── Arch_AWS-Elemental-Server_48.png
        │   │   │   ├── Arch_AWS-Elemental-Server_48.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Deadline_48.png
        │   │   │   ├── Arch_AWS-Thinkbox-Deadline_48.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Frost_48.png
        │   │   │   ├── Arch_AWS-Thinkbox-Frost_48.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Krakatoa_48.png
        │   │   │   ├── Arch_AWS-Thinkbox-Krakatoa_48.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Sequoia_48.png
        │   │   │   ├── Arch_AWS-Thinkbox-Sequoia_48.svg
        │   │   │   ├── Arch_AWS-Thinkbox-Stoke_48.png
        │   │   │   ├── Arch_AWS-Thinkbox-Stoke_48.svg
        │   │   │   ├── Arch_AWS-Thinkbox-XMesh_48.png
        │   │   │   └── Arch_AWS-Thinkbox-XMesh_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_Amazon-Elastic-Transcoder_64.png
        │   │       ├── Arch_Amazon-Elastic-Transcoder_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Interactive-Video-Service_64.png
        │   │       ├── Arch_Amazon-Interactive-Video-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Kinesis-Video-Streams_64.png
        │   │       ├── Arch_Amazon-Kinesis-Video-Streams_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Deadline-Cloud_64.png
        │   │       ├── Arch_AWS-Deadline-Cloud_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-Appliances-&-Software_64.png
        │   │       ├── Arch_AWS-Elemental-Appliances-&-Software_64.svg
        │   │       ├── Arch_AWS-Elemental-Appliances-&[email protected]
        │   │       ├── Arch_AWS-Elemental-Conductor_64.png
        │   │       ├── Arch_AWS-Elemental-Conductor_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-Delta_64.png
        │   │       ├── Arch_AWS-Elemental-Delta_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-Link_64.png
        │   │       ├── Arch_AWS-Elemental-Link_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-Live_64.png
        │   │       ├── Arch_AWS-Elemental-Live_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-MediaConnect_64.png
        │   │       ├── Arch_AWS-Elemental-MediaConnect_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-MediaConvert_64.png
        │   │       ├── Arch_AWS-Elemental-MediaConvert_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-MediaLive_64.png
        │   │       ├── Arch_AWS-Elemental-MediaLive_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-MediaPackage_64.png
        │   │       ├── Arch_AWS-Elemental-MediaPackage_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-MediaStore_64.png
        │   │       ├── Arch_AWS-Elemental-MediaStore_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-MediaTailor_64.png
        │   │       ├── Arch_AWS-Elemental-MediaTailor_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Elemental-Server_64.png
        │   │       ├── Arch_AWS-Elemental-Server_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Thinkbox-Deadline_64.png
        │   │       ├── Arch_AWS-Thinkbox-Deadline_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Thinkbox-Frost_64.png
        │   │       ├── Arch_AWS-Thinkbox-Frost_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Thinkbox-Krakatoa_64.png
        │   │       ├── Arch_AWS-Thinkbox-Krakatoa_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Thinkbox-Sequoia_64.png
        │   │       ├── Arch_AWS-Thinkbox-Sequoia_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Thinkbox-Stoke_64.png
        │   │       ├── Arch_AWS-Thinkbox-Stoke_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Thinkbox-XMesh_64.png
        │   │       ├── Arch_AWS-Thinkbox-XMesh_64.svg
        │   │       └── [email protected]
        │   ├── migration-modernization
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_AWS-Application-Discovery-Service_16.png
        │   │   │   ├── Arch_AWS-Application-Discovery-Service_16.svg
        │   │   │   ├── Arch_AWS-Application-Migration-Service_16.png
        │   │   │   ├── Arch_AWS-Application-Migration-Service_16.svg
        │   │   │   ├── Arch_AWS-Data-Transfer-Terminal_16.png
        │   │   │   ├── Arch_AWS-Data-Transfer-Terminal_16.svg
        │   │   │   ├── Arch_AWS-DataSync_16.png
        │   │   │   ├── Arch_AWS-DataSync_16.svg
        │   │   │   ├── Arch_AWS-Mainframe-Modernization_16.png
        │   │   │   ├── Arch_AWS-Mainframe-Modernization_16.svg
        │   │   │   ├── Arch_AWS-Migration-Evaluator_16.png
        │   │   │   ├── Arch_AWS-Migration-Evaluator_16.svg
        │   │   │   ├── Arch_AWS-Migration-Hub_16.png
        │   │   │   ├── Arch_AWS-Migration-Hub_16.svg
        │   │   │   ├── Arch_AWS-Transfer-Family_16.png
        │   │   │   ├── Arch_AWS-Transfer-Family_16.svg
        │   │   │   ├── Arch_AWS-Transform_16.png
        │   │   │   └── Arch_AWS-Transform_16.svg
        │   │   ├── 32
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_AWS-Application-Discovery-Service_32.png
        │   │   │   ├── Arch_AWS-Application-Discovery-Service_32.svg
        │   │   │   ├── Arch_AWS-Application-Migration-Service_32.png
        │   │   │   ├── Arch_AWS-Application-Migration-Service_32.svg
        │   │   │   ├── Arch_AWS-Data-Transfer-Terminal_32.png
        │   │   │   ├── Arch_AWS-Data-Transfer-Terminal_32.svg
        │   │   │   ├── Arch_AWS-DataSync_32.png
        │   │   │   ├── Arch_AWS-DataSync_32.svg
        │   │   │   ├── Arch_AWS-Mainframe-Modernization_32.png
        │   │   │   ├── Arch_AWS-Mainframe-Modernization_32.svg
        │   │   │   ├── Arch_AWS-Migration-Evaluator_32.png
        │   │   │   ├── Arch_AWS-Migration-Evaluator_32.svg
        │   │   │   ├── Arch_AWS-Migration-Hub_32.png
        │   │   │   ├── Arch_AWS-Migration-Hub_32.svg
        │   │   │   ├── Arch_AWS-Transfer-Family_32.png
        │   │   │   ├── Arch_AWS-Transfer-Family_32.svg
        │   │   │   ├── Arch_AWS-Transform_32.png
        │   │   │   └── Arch_AWS-Transform_32.svg
        │   │   ├── 48
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_AWS-Application-Discovery-Service_48.png
        │   │   │   ├── Arch_AWS-Application-Discovery-Service_48.svg
        │   │   │   ├── Arch_AWS-Application-Migration-Service_48.png
        │   │   │   ├── Arch_AWS-Application-Migration-Service_48.svg
        │   │   │   ├── Arch_AWS-Data-Transfer-Terminal_48.png
        │   │   │   ├── Arch_AWS-Data-Transfer-Terminal_48.svg
        │   │   │   ├── Arch_AWS-DataSync_48.png
        │   │   │   ├── Arch_AWS-DataSync_48.svg
        │   │   │   ├── Arch_AWS-Mainframe-Modernization_48.png
        │   │   │   ├── Arch_AWS-Mainframe-Modernization_48.svg
        │   │   │   ├── Arch_AWS-Migration-Evaluator_48.png
        │   │   │   ├── Arch_AWS-Migration-Evaluator_48.svg
        │   │   │   ├── Arch_AWS-Migration-Hub_48.png
        │   │   │   ├── Arch_AWS-Migration-Hub_48.svg
        │   │   │   ├── Arch_AWS-Transfer-Family_48.png
        │   │   │   ├── Arch_AWS-Transfer-Family_48.svg
        │   │   │   ├── Arch_AWS-Transform_48.png
        │   │   │   └── Arch_AWS-Transform_48.svg
        │   │   └── 64
        │   │       ├── .DS_Store
        │   │       ├── Arch_AWS-Application-Discovery-Service_64.png
        │   │       ├── Arch_AWS-Application-Discovery-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Application-Migration-Service_64.png
        │   │       ├── Arch_AWS-Application-Migration-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Data-Transfer-Terminal_64.png
        │   │       ├── Arch_AWS-Data-Transfer-Terminal_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-DataSync_64.png
        │   │       ├── Arch_AWS-DataSync_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Mainframe-Modernization_64.png
        │   │       ├── Arch_AWS-Mainframe-Modernization_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Migration-Evaluator_64.png
        │   │       ├── Arch_AWS-Migration-Evaluator_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Migration-Hub_64.png
        │   │       ├── Arch_AWS-Migration-Hub_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Transfer-Family_64.png
        │   │       ├── Arch_AWS-Transfer-Family_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Transform_64.png
        │   │       ├── Arch_AWS-Transform_64.svg
        │   │       └── [email protected]
        │   ├── networking-content-delivery
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── .DS_Store
        │   │   │   ├── Arch_Amazon-API-Gateway_16.png
        │   │   │   ├── Arch_Amazon-API-Gateway_16.svg
        │   │   │   ├── Arch_Amazon-Application-Recovery-Controller_16.png
        │   │   │   ├── Arch_Amazon-Application-Recovery-Controller_16.svg
        │   │   │   ├── Arch_Amazon-CloudFront_16.png
        │   │   │   ├── Arch_Amazon-CloudFront_16.svg
        │   │   │   ├── Arch_Amazon-Route-53_16.png
        │   │   │   ├── Arch_Amazon-Route-53_16.svg
        │   │   │   ├── Arch_Amazon-Virtual-Private-Cloud_16.png
        │   │   │   ├── Arch_Amazon-Virtual-Private-Cloud_16.svg
        │   │   │   ├── Arch_Amazon-VPC-Lattice_16.png
        │   │   │   ├── Arch_Amazon-VPC-Lattice_16.svg
        │   │   │   ├── Arch_AWS-App-Mesh_16.png
        │   │   │   ├── Arch_AWS-App-Mesh_16.svg
        │   │   │   ├── Arch_AWS-Client-VPN_16.png
        │   │   │   ├── Arch_AWS-Client-VPN_16.svg
        │   │   │   ├── Arch_AWS-Cloud-Map_16.png
        │   │   │   ├── Arch_AWS-Cloud-Map_16.svg
        │   │   │   ├── Arch_AWS-Cloud-WAN_16.png
        │   │   │   ├── Arch_AWS-Cloud-WAN_16.svg
        │   │   │   ├── Arch_AWS-Direct-Connect_16.png
        │   │   │   ├── Arch_AWS-Direct-Connect_16.svg
        │   │   │   ├── Arch_AWS-Global-Accelerator_16.png
        │   │   │   ├── Arch_AWS-Global-Accelerator_16.svg
        │   │   │   ├── Arch_AWS-Private-5G_16.png
        │   │   │   ├── Arch_AWS-Private-5G_16.svg
        │   │   │   ├── Arch_AWS-PrivateLink_16.png
        │   │   │   ├── Arch_AWS-PrivateLink_16.svg
        │   │   │   ├── Arch_AWS-Site-to-Site-VPN_16.png
        │   │   │   ├── Arch_AWS-Site-to-Site-VPN_16.svg
        │   │   │   ├── Arch_AWS-Transit-Gateway_16.png
        │   │   │   ├── Arch_AWS-Transit-Gateway_16.svg
        │   │   │   ├── Arch_AWS-Verified-Access_16.png
        │   │   │   ├── Arch_AWS-Verified-Access_16.svg
        │   │   │   ├── Arch_Elastic-Load-Balancing_16.png
        │   │   │   └── Arch_Elastic-Load-Balancing_16.svg
        │   │   ├── 32
        │   │   │   ├── Arch_Amazon-API-Gateway_32.png
        │   │   │   ├── Arch_Amazon-API-Gateway_32.svg
        │   │   │   ├── Arch_Amazon-Application-Recovery-Controller_32.png
        │   │   │   ├── Arch_Amazon-Application-Recovery-Controller_32.svg
        │   │   │   ├── Arch_Amazon-CloudFront_32.png
        │   │   │   ├── Arch_Amazon-CloudFront_32.svg
        │   │   │   ├── Arch_Amazon-Route-53_32.png
        │   │   │   ├── Arch_Amazon-Route-53_32.svg
        │   │   │   ├── Arch_Amazon-Virtual-Private-Cloud_32.png
        │   │   │   ├── Arch_Amazon-Virtual-Private-Cloud_32.svg
        │   │   │   ├── Arch_Amazon-VPC-Lattice_32.png
        │   │   │   ├── Arch_Amazon-VPC-Lattice_32.svg
        │   │   │   ├── Arch_AWS-App-Mesh_32.png
        │   │   │   ├── Arch_AWS-App-Mesh_32.svg
        │   │   │   ├── Arch_AWS-Client-VPN_32.png
        │   │   │   ├── Arch_AWS-Client-VPN_32.svg
        │   │   │   ├── Arch_AWS-Cloud-Map_32.png
        │   │   │   ├── Arch_AWS-Cloud-Map_32.svg
        │   │   │   ├── Arch_AWS-Cloud-WAN_32.png
        │   │   │   ├── Arch_AWS-Cloud-WAN_32.svg
        │   │   │   ├── Arch_AWS-Direct-Connect_32.png
        │   │   │   ├── Arch_AWS-Direct-Connect_32.svg
        │   │   │   ├── Arch_AWS-Global-Accelerator_32.png
        │   │   │   ├── Arch_AWS-Global-Accelerator_32.svg
        │   │   │   ├── Arch_AWS-Private-5G_32.png
        │   │   │   ├── Arch_AWS-Private-5G_32.svg
        │   │   │   ├── Arch_AWS-PrivateLink_32.png
        │   │   │   ├── Arch_AWS-PrivateLink_32.svg
        │   │   │   ├── Arch_AWS-Site-to-Site-VPN_32.png
        │   │   │   ├── Arch_AWS-Site-to-Site-VPN_32.svg
        │   │   │   ├── Arch_AWS-Transit-Gateway_32.png
        │   │   │   ├── Arch_AWS-Transit-Gateway_32.svg
        │   │   │   ├── Arch_AWS-Verified-Access_32.png
        │   │   │   ├── Arch_AWS-Verified-Access_32.svg
        │   │   │   ├── Arch_Elastic-Load-Balancing_32.png
        │   │   │   └── Arch_Elastic-Load-Balancing_32.svg
        │   │   ├── 48
        │   │   │   ├── Arch_Amazon-API-Gateway_48.png
        │   │   │   ├── Arch_Amazon-API-Gateway_48.svg
        │   │   │   ├── Arch_Amazon-Application-Recovery-Controller_48.png
        │   │   │   ├── Arch_Amazon-Application-Recovery-Controller_48.svg
        │   │   │   ├── Arch_Amazon-CloudFront_48.png
        │   │   │   ├── Arch_Amazon-CloudFront_48.svg
        │   │   │   ├── Arch_Amazon-Route-53_48.png
        │   │   │   ├── Arch_Amazon-Route-53_48.svg
        │   │   │   ├── Arch_Amazon-Virtual-Private-Cloud_48.png
        │   │   │   ├── Arch_Amazon-Virtual-Private-Cloud_48.svg
        │   │   │   ├── Arch_Amazon-VPC-Lattice_48.png
        │   │   │   ├── Arch_Amazon-VPC-Lattice_48.svg
        │   │   │   ├── Arch_AWS-App-Mesh_48.png
        │   │   │   ├── Arch_AWS-App-Mesh_48.svg
        │   │   │   ├── Arch_AWS-Client-VPN_48.png
        │   │   │   ├── Arch_AWS-Client-VPN_48.svg
        │   │   │   ├── Arch_AWS-Cloud-Map_48.png
        │   │   │   ├── Arch_AWS-Cloud-Map_48.svg
        │   │   │   ├── Arch_AWS-Cloud-WAN_48.png
        │   │   │   ├── Arch_AWS-Cloud-WAN_48.svg
        │   │   │   ├── Arch_AWS-Direct-Connect_48.png
        │   │   │   ├── Arch_AWS-Direct-Connect_48.svg
        │   │   │   ├── Arch_AWS-Global-Accelerator_48.png
        │   │   │   ├── Arch_AWS-Global-Accelerator_48.svg
        │   │   │   ├── Arch_AWS-Private-5G_48.png
        │   │   │   ├── Arch_AWS-Private-5G_48.svg
        │   │   │   ├── Arch_AWS-PrivateLink_48.png
        │   │   │   ├── Arch_AWS-PrivateLink_48.svg
        │   │   │   ├── Arch_AWS-Site-to-Site-VPN_48.png
        │   │   │   ├── Arch_AWS-Site-to-Site-VPN_48.svg
        │   │   │   ├── Arch_AWS-Transit-Gateway_48.png
        │   │   │   ├── Arch_AWS-Transit-Gateway_48.svg
        │   │   │   ├── Arch_AWS-Verified-Access_48.png
        │   │   │   ├── Arch_AWS-Verified-Access_48.svg
        │   │   │   ├── Arch_Elastic-Load-Balancing_48.png
        │   │   │   └── Arch_Elastic-Load-Balancing_48.svg
        │   │   └── 64
        │   │       ├── Arch_Amazon-API-Gateway_64.png
        │   │       ├── Arch_Amazon-API-Gateway_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Application-Recovery-Controller_64.png
        │   │       ├── Arch_Amazon-Application-Recovery-Controller_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-CloudFront_64.png
        │   │       ├── Arch_Amazon-CloudFront_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Route-53_64.png
        │   │       ├── Arch_Amazon-Route-53_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Virtual-Private-Cloud_64.png
        │   │       ├── Arch_Amazon-Virtual-Private-Cloud_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-VPC-Lattice_64.png
        │   │       ├── Arch_Amazon-VPC-Lattice_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-App-Mesh_64.png
        │   │       ├── Arch_AWS-App-Mesh_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Client-VPN_64.png
        │   │       ├── Arch_AWS-Client-VPN_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Cloud-Map_64.png
        │   │       ├── Arch_AWS-Cloud-Map_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Cloud-WAN_64.png
        │   │       ├── Arch_AWS-Cloud-WAN_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Direct-Connect_64.png
        │   │       ├── Arch_AWS-Direct-Connect_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Global-Accelerator_64.png
        │   │       ├── Arch_AWS-Global-Accelerator_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Private-5G_64.png
        │   │       ├── Arch_AWS-Private-5G_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-PrivateLink_64.png
        │   │       ├── Arch_AWS-PrivateLink_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Site-to-Site-VPN_64.png
        │   │       ├── Arch_AWS-Site-to-Site-VPN_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Transit-Gateway_64.png
        │   │       ├── Arch_AWS-Transit-Gateway_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Verified-Access_64.png
        │   │       ├── Arch_AWS-Verified-Access_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Elastic-Load-Balancing_64.png
        │   │       ├── Arch_Elastic-Load-Balancing_64.svg
        │   │       └── [email protected]
        │   ├── quantum-technologies
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── Arch_Amazon-Braket_16.png
        │   │   │   └── Arch_Amazon-Braket_16.svg
        │   │   ├── 32
        │   │   │   ├── Arch_Amazon-Braket_32.png
        │   │   │   └── Arch_Amazon-Braket_32.svg
        │   │   ├── 48
        │   │   │   ├── Arch_Amazon-Braket_48.png
        │   │   │   └── Arch_Amazon-Braket_48.svg
        │   │   └── 64
        │   │       ├── Arch_Amazon-Braket_64.png
        │   │       ├── Arch_Amazon-Braket_64.svg
        │   │       └── [email protected]
        │   ├── satellite
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── Arch_AWS-Ground-Station_16.png
        │   │   │   └── Arch_AWS-Ground-Station_16.svg
        │   │   ├── 32
        │   │   │   ├── Arch_AWS-Ground-Station_32.png
        │   │   │   └── Arch_AWS-Ground-Station_32.svg
        │   │   ├── 48
        │   │   │   ├── Arch_AWS-Ground-Station_48.png
        │   │   │   └── Arch_AWS-Ground-Station_48.svg
        │   │   └── 64
        │   │       ├── Arch_AWS-Ground-Station_64.png
        │   │       ├── Arch_AWS-Ground-Station_64.svg
        │   │       └── [email protected]
        │   ├── security-identity-compliance
        │   │   ├── .DS_Store
        │   │   ├── 16
        │   │   │   ├── Arch_Amazon-Cloud-Directory_16.png
        │   │   │   ├── Arch_Amazon-Cloud-Directory_16.svg
        │   │   │   ├── Arch_Amazon-Cognito_16.png
        │   │   │   ├── Arch_Amazon-Cognito_16.svg
        │   │   │   ├── Arch_Amazon-Detective_16.png
        │   │   │   ├── Arch_Amazon-Detective_16.svg
        │   │   │   ├── Arch_Amazon-GuardDuty_16.png
        │   │   │   ├── Arch_Amazon-GuardDuty_16.svg
        │   │   │   ├── Arch_Amazon-Inspector_16.png
        │   │   │   ├── Arch_Amazon-Inspector_16.svg
        │   │   │   ├── Arch_Amazon-Macie_16.png
        │   │   │   ├── Arch_Amazon-Macie_16.svg
        │   │   │   ├── Arch_Amazon-Security-Lake_16.png
        │   │   │   ├── Arch_Amazon-Security-Lake_16.svg
        │   │   │   ├── Arch_Amazon-Verified-Permissions_16.png
        │   │   │   ├── Arch_Amazon-Verified-Permissions_16.svg
        │   │   │   ├── Arch_AWS-Artifact_16.png
        │   │   │   ├── Arch_AWS-Artifact_16.svg
        │   │   │   ├── Arch_AWS-Audit-Manager_16.png
        │   │   │   ├── Arch_AWS-Audit-Manager_16.svg
        │   │   │   ├── Arch_AWS-Certificate-Manager_16.png
        │   │   │   ├── Arch_AWS-Certificate-Manager_16.svg
        │   │   │   ├── Arch_AWS-CloudHSM_16.png
        │   │   │   ├── Arch_AWS-CloudHSM_16.svg
        │   │   │   ├── Arch_AWS-Directory-Service_16.png
        │   │   │   ├── Arch_AWS-Directory-Service_16.svg
        │   │   │   ├── Arch_AWS-Firewall-Manager_16.png
        │   │   │   ├── Arch_AWS-Firewall-Manager_16.svg
        │   │   │   ├── Arch_AWS-IAM-Identity-Center_16.png
        │   │   │   ├── Arch_AWS-IAM-Identity-Center_16.svg
        │   │   │   ├── Arch_AWS-Identity-and-Access-Management_16.png
        │   │   │   ├── Arch_AWS-Identity-and-Access-Management_16.svg
        │   │   │   ├── Arch_AWS-Key-Management-Service_16.png
        │   │   │   ├── Arch_AWS-Key-Management-Service_16.svg
        │   │   │   ├── Arch_AWS-Network-Firewall_16.png
        │   │   │   ├── Arch_AWS-Network-Firewall_16.svg
        │   │   │   ├── Arch_AWS-Payment-Cryptography_16.png
        │   │   │   ├── Arch_AWS-Payment-Cryptography_16.svg
        │   │   │   ├── Arch_AWS-Private-Certificate-Authority_16.png
        │   │   │   ├── Arch_AWS-Private-Certificate-Authority_16.svg
        │   │   │   ├── Arch_AWS-Resource-Access-Manager_16.png
        │   │   │   ├── Arch_AWS-Resource-Access-Manager_16.svg
        │   │   │   ├── Arch_AWS-Secrets-Manager_16.png
        │   │   │   ├── Arch_AWS-Secrets-Manager_16.svg
        │   │   │   ├── Arch_AWS-Security-Hub_16.png
        │   │   │   ├── Arch_AWS-Security-Hub_16.svg
        │   │   │   ├── Arch_AWS-Security-Incident-Response_16.png
        │   │   │   ├── Arch_AWS-Security-Incident-Response_16.svg
        │   │   │   ├── Arch_AWS-Shield_16.png
        │   │   │   ├── Arch_AWS-Shield_16.svg
        │   │   │   ├── Arch_AWS-Signer_16.png
        │   │   │   ├── Arch_AWS-Signer_16.svg
        │   │   │   ├── Arch_AWS-WAF_16.png
        │   │   │   └── Arch_AWS-WAF_16.svg
        │   │   ├── 32
        │   │   │   ├── Arch_Amazon-Cloud-Directory_32.png
        │   │   │   ├── Arch_Amazon-Cloud-Directory_32.svg
        │   │   │   ├── Arch_Amazon-Cognito_32.png
        │   │   │   ├── Arch_Amazon-Cognito_32.svg
        │   │   │   ├── Arch_Amazon-Detective_32.png
        │   │   │   ├── Arch_Amazon-Detective_32.svg
        │   │   │   ├── Arch_Amazon-GuardDuty_32.png
        │   │   │   ├── Arch_Amazon-GuardDuty_32.svg
        │   │   │   ├── Arch_Amazon-Inspector_32.png
        │   │   │   ├── Arch_Amazon-Inspector_32.svg
        │   │   │   ├── Arch_Amazon-Macie_32.png
        │   │   │   ├── Arch_Amazon-Macie_32.svg
        │   │   │   ├── Arch_Amazon-Security-Lake_32.png
        │   │   │   ├── Arch_Amazon-Security-Lake_32.svg
        │   │   │   ├── Arch_Amazon-Verified-Permissions_32.png
        │   │   │   ├── Arch_Amazon-Verified-Permissions_32.svg
        │   │   │   ├── Arch_AWS-Artifact_32.png
        │   │   │   ├── Arch_AWS-Artifact_32.svg
        │   │   │   ├── Arch_AWS-Audit-Manager_32.png
        │   │   │   ├── Arch_AWS-Audit-Manager_32.svg
        │   │   │   ├── Arch_AWS-Certificate-Manager_32.png
        │   │   │   ├── Arch_AWS-Certificate-Manager_32.svg
        │   │   │   ├── Arch_AWS-CloudHSM_32.png
        │   │   │   ├── Arch_AWS-CloudHSM_32.svg
        │   │   │   ├── Arch_AWS-Directory-Service_32.png
        │   │   │   ├── Arch_AWS-Directory-Service_32.svg
        │   │   │   ├── Arch_AWS-Firewall-Manager_32.png
        │   │   │   ├── Arch_AWS-Firewall-Manager_32.svg
        │   │   │   ├── Arch_AWS-IAM-Identity-Center_32.png
        │   │   │   ├── Arch_AWS-IAM-Identity-Center_32.svg
        │   │   │   ├── Arch_AWS-Identity-and-Access-Management_32.png
        │   │   │   ├── Arch_AWS-Identity-and-Access-Management_32.svg
        │   │   │   ├── Arch_AWS-Key-Management-Service_32.png
        │   │   │   ├── Arch_AWS-Key-Management-Service_32.svg
        │   │   │   ├── Arch_AWS-Network-Firewall_32.png
        │   │   │   ├── Arch_AWS-Network-Firewall_32.svg
        │   │   │   ├── Arch_AWS-Payment-Cryptography_32.png
        │   │   │   ├── Arch_AWS-Payment-Cryptography_32.svg
        │   │   │   ├── Arch_AWS-Private-Certificate-Authority_32.png
        │   │   │   ├── Arch_AWS-Private-Certificate-Authority_32.svg
        │   │   │   ├── Arch_AWS-Resource-Access-Manager_32.png
        │   │   │   ├── Arch_AWS-Resource-Access-Manager_32.svg
        │   │   │   ├── Arch_AWS-Secrets-Manager_32.png
        │   │   │   ├── Arch_AWS-Secrets-Manager_32.svg
        │   │   │   ├── Arch_AWS-Security-Hub_32.png
        │   │   │   ├── Arch_AWS-Security-Hub_32.svg
        │   │   │   ├── Arch_AWS-Security-Incident-Response_32.png
        │   │   │   ├── Arch_AWS-Security-Incident-Response_32.svg
        │   │   │   ├── Arch_AWS-Shield_32.png
        │   │   │   ├── Arch_AWS-Shield_32.svg
        │   │   │   ├── Arch_AWS-Signer_32.png
        │   │   │   ├── Arch_AWS-Signer_32.svg
        │   │   │   ├── Arch_AWS-WAF_32.png
        │   │   │   └── Arch_AWS-WAF_32.svg
        │   │   ├── 48
        │   │   │   ├── Arch_Amazon-Cloud-Directory_48.png
        │   │   │   ├── Arch_Amazon-Cloud-Directory_48.svg
        │   │   │   ├── Arch_Amazon-Cognito_48.png
        │   │   │   ├── Arch_Amazon-Cognito_48.svg
        │   │   │   ├── Arch_Amazon-Detective_48.png
        │   │   │   ├── Arch_Amazon-Detective_48.svg
        │   │   │   ├── Arch_Amazon-GuardDuty_48.png
        │   │   │   ├── Arch_Amazon-GuardDuty_48.svg
        │   │   │   ├── Arch_Amazon-Inspector_48.png
        │   │   │   ├── Arch_Amazon-Inspector_48.svg
        │   │   │   ├── Arch_Amazon-Macie_48.png
        │   │   │   ├── Arch_Amazon-Macie_48.svg
        │   │   │   ├── Arch_Amazon-Security-Lake_48.png
        │   │   │   ├── Arch_Amazon-Security-Lake_48.svg
        │   │   │   ├── Arch_Amazon-Verified-Permissions_48.png
        │   │   │   ├── Arch_Amazon-Verified-Permissions_48.svg
        │   │   │   ├── Arch_AWS-Artifact_48.png
        │   │   │   ├── Arch_AWS-Artifact_48.svg
        │   │   │   ├── Arch_AWS-Audit-Manager_48.png
        │   │   │   ├── Arch_AWS-Audit-Manager_48.svg
        │   │   │   ├── Arch_AWS-Certificate-Manager_48.png
        │   │   │   ├── Arch_AWS-Certificate-Manager_48.svg
        │   │   │   ├── Arch_AWS-CloudHSM_48.png
        │   │   │   ├── Arch_AWS-CloudHSM_48.svg
        │   │   │   ├── Arch_AWS-Directory-Service_48.png
        │   │   │   ├── Arch_AWS-Directory-Service_48.svg
        │   │   │   ├── Arch_AWS-Firewall-Manager_48.png
        │   │   │   ├── Arch_AWS-Firewall-Manager_48.svg
        │   │   │   ├── Arch_AWS-IAM-Identity-Center_48.png
        │   │   │   ├── Arch_AWS-IAM-Identity-Center_48.svg
        │   │   │   ├── Arch_AWS-Identity-and-Access-Management_48.png
        │   │   │   ├── Arch_AWS-Identity-and-Access-Management_48.svg
        │   │   │   ├── Arch_AWS-Key-Management-Service_48.png
        │   │   │   ├── Arch_AWS-Key-Management-Service_48.svg
        │   │   │   ├── Arch_AWS-Network-Firewall_48.png
        │   │   │   ├── Arch_AWS-Network-Firewall_48.svg
        │   │   │   ├── Arch_AWS-Payment-Cryptography_48.png
        │   │   │   ├── Arch_AWS-Payment-Cryptography_48.svg
        │   │   │   ├── Arch_AWS-Private-Certificate-Authority_48.png
        │   │   │   ├── Arch_AWS-Private-Certificate-Authority_48.svg
        │   │   │   ├── Arch_AWS-Resource-Access-Manager_48.png
        │   │   │   ├── Arch_AWS-Resource-Access-Manager_48.svg
        │   │   │   ├── Arch_AWS-Secrets-Manager_48.png
        │   │   │   ├── Arch_AWS-Secrets-Manager_48.svg
        │   │   │   ├── Arch_AWS-Security-Hub_48.png
        │   │   │   ├── Arch_AWS-Security-Hub_48.svg
        │   │   │   ├── Arch_AWS-Security-Incident-Response_48.png
        │   │   │   ├── Arch_AWS-Security-Incident-Response_48.svg
        │   │   │   ├── Arch_AWS-Shield_48.png
        │   │   │   ├── Arch_AWS-Shield_48.svg
        │   │   │   ├── Arch_AWS-Signer_48.png
        │   │   │   ├── Arch_AWS-Signer_48.svg
        │   │   │   ├── Arch_AWS-WAF_48.png
        │   │   │   └── Arch_AWS-WAF_48.svg
        │   │   └── 64
        │   │       ├── Arch_Amazon-Cloud-Directory_64.png
        │   │       ├── Arch_Amazon-Cloud-Directory_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Cognito_64.png
        │   │       ├── Arch_Amazon-Cognito_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Detective_64.png
        │   │       ├── Arch_Amazon-Detective_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-GuardDuty_64.png
        │   │       ├── Arch_Amazon-GuardDuty_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Inspector_64.png
        │   │       ├── Arch_Amazon-Inspector_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Macie_64.png
        │   │       ├── Arch_Amazon-Macie_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Security-Lake_64.png
        │   │       ├── Arch_Amazon-Security-Lake_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_Amazon-Verified-Permissions_64.png
        │   │       ├── Arch_Amazon-Verified-Permissions_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Artifact_64.png
        │   │       ├── Arch_AWS-Artifact_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Audit-Manager_64.png
        │   │       ├── Arch_AWS-Audit-Manager_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Certificate-Manager_64.png
        │   │       ├── Arch_AWS-Certificate-Manager_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-CloudHSM_64.png
        │   │       ├── Arch_AWS-CloudHSM_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Directory-Service_64.png
        │   │       ├── Arch_AWS-Directory-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Firewall-Manager_64.png
        │   │       ├── Arch_AWS-Firewall-Manager_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-IAM-Identity-Center_64.png
        │   │       ├── Arch_AWS-IAM-Identity-Center_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Identity-and-Access-Management_64.png
        │   │       ├── Arch_AWS-Identity-and-Access-Management_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Key-Management-Service_64.png
        │   │       ├── Arch_AWS-Key-Management-Service_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Network-Firewall_64.png
        │   │       ├── Arch_AWS-Network-Firewall_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Payment-Cryptography_64.png
        │   │       ├── Arch_AWS-Payment-Cryptography_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Private-Certificate-Authority_64.png
        │   │       ├── Arch_AWS-Private-Certificate-Authority_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Resource-Access-Manager_64.png
        │   │       ├── Arch_AWS-Resource-Access-Manager_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Secrets-Manager_64.png
        │   │       ├── Arch_AWS-Secrets-Manager_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Security-Hub_64.png
        │   │       ├── Arch_AWS-Security-Hub_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Security-Incident-Response_64.png
        │   │       ├── Arch_AWS-Security-Incident-Response_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Shield_64.png
        │   │       ├── Arch_AWS-Shield_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-Signer_64.png
        │   │       ├── Arch_AWS-Signer_64.svg
        │   │       ├── [email protected]
        │   │       ├── Arch_AWS-WAF_64.png
        │   │       ├── Arch_AWS-WAF_64.svg
        │   │       └── [email protected]
        │   └── storage
        │       ├── .DS_Store
        │       ├── 16
        │       │   ├── .DS_Store
        │       │   ├── Arch_Amazon-EFS_16.png
        │       │   ├── Arch_Amazon-EFS_16.svg
        │       │   ├── Arch_Amazon-Elastic-Block-Store_16.png
        │       │   ├── Arch_Amazon-Elastic-Block-Store_16.svg
        │       │   ├── Arch_Amazon-File-Cache_16.png
        │       │   ├── Arch_Amazon-File-Cache_16.svg
        │       │   ├── Arch_Amazon-FSx_16.png
        │       │   ├── Arch_Amazon-FSx_16.svg
        │       │   ├── Arch_Amazon-FSx-for-Lustre_16.png
        │       │   ├── Arch_Amazon-FSx-for-Lustre_16.svg
        │       │   ├── Arch_Amazon-FSx-for-NetApp-ONTAP_16.png
        │       │   ├── Arch_Amazon-FSx-for-NetApp-ONTAP_16.svg
        │       │   ├── Arch_Amazon-FSx-for-OpenZFS_16.png
        │       │   ├── Arch_Amazon-FSx-for-OpenZFS_16.svg
        │       │   ├── Arch_Amazon-FSx-for-WFS_16.png
        │       │   ├── Arch_Amazon-FSx-for-WFS_16.svg
        │       │   ├── Arch_Amazon-S3-on-Outposts_16.png
        │       │   ├── Arch_Amazon-S3-on-Outposts_16.svg
        │       │   ├── Arch_Amazon-Simple-Storage-Service_16.png
        │       │   ├── Arch_Amazon-Simple-Storage-Service_16.svg
        │       │   ├── Arch_Amazon-Simple-Storage-Service-Glacier_16.png
        │       │   ├── Arch_Amazon-Simple-Storage-Service-Glacier_16.svg
        │       │   ├── Arch_AWS-Backup_16.png
        │       │   ├── Arch_AWS-Backup_16.svg
        │       │   ├── Arch_AWS-Elastic-Disaster-Recovery_16.png
        │       │   ├── Arch_AWS-Elastic-Disaster-Recovery_16.svg
        │       │   ├── Arch_AWS-Snowball_16.png
        │       │   ├── Arch_AWS-Snowball_16.svg
        │       │   ├── Arch_AWS-Snowball-Edge_16.png
        │       │   ├── Arch_AWS-Snowball-Edge_16.svg
        │       │   ├── Arch_AWS-Storage-Gateway_16.png
        │       │   └── Arch_AWS-Storage-Gateway_16.svg
        │       ├── 32
        │       │   ├── .DS_Store
        │       │   ├── Arch_Amazon-EFS_32.png
        │       │   ├── Arch_Amazon-EFS_32.svg
        │       │   ├── Arch_Amazon-Elastic-Block-Store_32.png
        │       │   ├── Arch_Amazon-Elastic-Block-Store_32.svg
        │       │   ├── Arch_Amazon-File-Cache_32.png
        │       │   ├── Arch_Amazon-File-Cache_32.svg
        │       │   ├── Arch_Amazon-FSx_32.png
        │       │   ├── Arch_Amazon-FSx_32.svg
        │       │   ├── Arch_Amazon-FSx-for-Lustre_32.png
        │       │   ├── Arch_Amazon-FSx-for-Lustre_32.svg
        │       │   ├── Arch_Amazon-FSx-for-NetApp-ONTAP_32.png
        │       │   ├── Arch_Amazon-FSx-for-NetApp-ONTAP_32.svg
        │       │   ├── Arch_Amazon-FSx-for-OpenZFS_32.png
        │       │   ├── Arch_Amazon-FSx-for-OpenZFS_32.svg
        │       │   ├── Arch_Amazon-FSx-for-WFS_32.png
        │       │   ├── Arch_Amazon-FSx-for-WFS_32.svg
        │       │   ├── Arch_Amazon-S3-on-Outposts_32.png
        │       │   ├── Arch_Amazon-S3-on-Outposts_32.svg
        │       │   ├── Arch_Amazon-Simple-Storage-Service_32.png
        │       │   ├── Arch_Amazon-Simple-Storage-Service_32.svg
        │       │   ├── Arch_Amazon-Simple-Storage-Service-Glacier_32.png
        │       │   ├── Arch_Amazon-Simple-Storage-Service-Glacier_32.svg
        │       │   ├── Arch_AWS-Backup_32.png
        │       │   ├── Arch_AWS-Backup_32.svg
        │       │   ├── Arch_AWS-Elastic-Disaster-Recovery_32.png
        │       │   ├── Arch_AWS-Elastic-Disaster-Recovery_32.svg
        │       │   ├── Arch_AWS-Snowball_32.png
        │       │   ├── Arch_AWS-Snowball_32.svg
        │       │   ├── Arch_AWS-Snowball-Edge_32.png
        │       │   ├── Arch_AWS-Snowball-Edge_32.svg
        │       │   ├── Arch_AWS-Storage-Gateway_32.png
        │       │   └── Arch_AWS-Storage-Gateway_32.svg
        │       ├── 48
        │       │   ├── .DS_Store
        │       │   ├── Arch_Amazon-EFS_48.png
        │       │   ├── Arch_Amazon-EFS_48.svg
        │       │   ├── Arch_Amazon-Elastic-Block-Store_48.png
        │       │   ├── Arch_Amazon-Elastic-Block-Store_48.svg
        │       │   ├── Arch_Amazon-File-Cache_48.png
        │       │   ├── Arch_Amazon-File-Cache_48.svg
        │       │   ├── Arch_Amazon-FSx_48.png
        │       │   ├── Arch_Amazon-FSx_48.svg
        │       │   ├── Arch_Amazon-FSx-for-Lustre_48.png
        │       │   ├── Arch_Amazon-FSx-for-Lustre_48.svg
        │       │   ├── Arch_Amazon-FSx-for-NetApp-ONTAP_48.png
        │       │   ├── Arch_Amazon-FSx-for-NetApp-ONTAP_48.svg
        │       │   ├── Arch_Amazon-FSx-for-OpenZFS_48.png
        │       │   ├── Arch_Amazon-FSx-for-OpenZFS_48.svg
        │       │   ├── Arch_Amazon-FSx-for-WFS_48.png
        │       │   ├── Arch_Amazon-FSx-for-WFS_48.svg
        │       │   ├── Arch_Amazon-S3-on-Outposts_48.png
        │       │   ├── Arch_Amazon-S3-on-Outposts_48.svg
        │       │   ├── Arch_Amazon-Simple-Storage-Service_48.png
        │       │   ├── Arch_Amazon-Simple-Storage-Service_48.svg
        │       │   ├── Arch_Amazon-Simple-Storage-Service-Glacier_48.png
        │       │   ├── Arch_Amazon-Simple-Storage-Service-Glacier_48.svg
        │       │   ├── Arch_AWS-Backup_48.png
        │       │   ├── Arch_AWS-Backup_48.svg
        │       │   ├── Arch_AWS-Elastic-Disaster-Recovery_48.png
        │       │   ├── Arch_AWS-Elastic-Disaster-Recovery_48.svg
        │       │   ├── Arch_AWS-Snowball_48.png
        │       │   ├── Arch_AWS-Snowball_48.svg
        │       │   ├── Arch_AWS-Snowball-Edge_48.png
        │       │   ├── Arch_AWS-Snowball-Edge_48.svg
        │       │   ├── Arch_AWS-Storage-Gateway_48.png
        │       │   └── Arch_AWS-Storage-Gateway_48.svg
        │       └── 64
        │           ├── .DS_Store
        │           ├── Arch_Amazon-EFS_64.png
        │           ├── Arch_Amazon-EFS_64.svg
        │           ├── [email protected]
        │           ├── Arch_Amazon-Elastic-Block-Store_64.png
        │           ├── Arch_Amazon-Elastic-Block-Store_64.svg
        │           ├── [email protected]
        │           ├── Arch_Amazon-File-Cache_64.png
        │           ├── Arch_Amazon-File-Cache_64.svg
        │           ├── [email protected]
        │           ├── Arch_Amazon-FSx_64.png
        │           ├── Arch_Amazon-FSx_64.svg
        │           ├── [email protected]
        │           ├── Arch_Amazon-FSx-for-Lustre_64.png
        │           ├── Arch_Amazon-FSx-for-Lustre_64.svg
        │           ├── [email protected]
        │           ├── Arch_Amazon-FSx-for-NetApp-ONTAP_64.png
        │           ├── Arch_Amazon-FSx-for-NetApp-ONTAP_64.svg
        │           ├── [email protected]
        │           ├── Arch_Amazon-FSx-for-OpenZFS_64.png
        │           ├── Arch_Amazon-FSx-for-OpenZFS_64.svg
        │           ├── [email protected]
        │           ├── Arch_Amazon-FSx-for-WFS_64.png
        │           ├── Arch_Amazon-FSx-for-WFS_64.svg
        │           ├── [email protected]
        │           ├── Arch_Amazon-S3-on-Outposts_64.png
        │           ├── Arch_Amazon-S3-on-Outposts_64.svg
        │           ├── [email protected]
        │           ├── Arch_Amazon-Simple-Storage-Service_64.png
        │           ├── Arch_Amazon-Simple-Storage-Service_64.svg
        │           ├── [email protected]
        │           ├── Arch_Amazon-Simple-Storage-Service-Glacier_64.png
        │           ├── Arch_Amazon-Simple-Storage-Service-Glacier_64.svg
        │           ├── [email protected]
        │           ├── Arch_AWS-Backup_64.png
        │           ├── Arch_AWS-Backup_64.svg
        │           ├── [email protected]
        │           ├── Arch_AWS-Elastic-Disaster-Recovery_64.png
        │           ├── Arch_AWS-Elastic-Disaster-Recovery_64.svg
        │           ├── [email protected]
        │           ├── Arch_AWS-Snowball_64.png
        │           ├── Arch_AWS-Snowball_64.svg
        │           ├── [email protected]
        │           ├── Arch_AWS-Snowball-Edge_64.png
        │           ├── Arch_AWS-Snowball-Edge_64.svg
        │           ├── [email protected]
        │           ├── Arch_AWS-Storage-Gateway_64.png
        │           ├── Arch_AWS-Storage-Gateway_64.svg
        │           └── [email protected]
        ├── index.html
        ├── manifest.json
        ├── robots.txt
        └── static
            ├── css
            │   ├── main.c910004d.css
            │   └── main.c910004d.css.map
            └── js
                ├── 1297.c349ec3c.chunk.js
                ├── 14.7ba48ec4.chunk.js
                ├── 14.7ba48ec4.chunk.js.LICENSE.txt
                ├── 14.7ba48ec4.chunk.js.map
                ├── 1409.d2c5ac18.chunk.js
                ├── 1457.10b2696f.chunk.js
                ├── 1595.f10cd903.chunk.js
                ├── 1595.f10cd903.chunk.js.LICENSE.txt
                ├── 1595.f10cd903.chunk.js.map
                ├── 1707.26c2b146.chunk.js
                ├── 1707.26c2b146.chunk.js.map
                ├── 2019.3e4e6398.chunk.js
                ├── 2019.3e4e6398.chunk.js.map
                ├── 2038.86d3ba27.chunk.js
                ├── 2038.86d3ba27.chunk.js.map
                ├── 2374.75cb7c60.chunk.js
                ├── 2374.75cb7c60.chunk.js.LICENSE.txt
                ├── 2374.75cb7c60.chunk.js.map
                ├── 2491.6dc3b41c.chunk.js
                ├── 2491.6dc3b41c.chunk.js.map
                ├── 3025.e856e271.chunk.js
                ├── 3025.e856e271.chunk.js.LICENSE.txt
                ├── 3025.e856e271.chunk.js.map
                ├── 3290.6c752b7b.chunk.js
                ├── 3290.6c752b7b.chunk.js.map
                ├── 3345.719283e7.chunk.js
                ├── 3345.719283e7.chunk.js.map
                ├── 349.2456c1b6.chunk.js
                ├── 349.2456c1b6.chunk.js.map
                ├── 3641.87d0bf7c.chunk.js
                ├── 3641.87d0bf7c.chunk.js.map
                ├── 3705.1bb92025.chunk.js
                ├── 3705.1bb92025.chunk.js.map
                ├── 3750.c184e3e3.chunk.js
                ├── 3750.c184e3e3.chunk.js.map
                ├── 3817.79a57e5e.chunk.js
                ├── 3817.79a57e5e.chunk.js.map
                ├── 4114.eea3c770.chunk.js
                ├── 4114.eea3c770.chunk.js.map
                ├── 4135.b88aaf7b.chunk.js
                ├── 4147.5f8e8649.chunk.js
                ├── 4191.3ed02494.chunk.js
                ├── 4191.3ed02494.chunk.js.map
                ├── 4487.fec1d877.chunk.js
                ├── 4570.ce64aedb.chunk.js
                ├── 4570.ce64aedb.chunk.js.map
                ├── 490.a05b6059.chunk.js
                ├── 490.a05b6059.chunk.js.map
                ├── 5009.1a2aa685.chunk.js
                ├── 5009.1a2aa685.chunk.js.LICENSE.txt
                ├── 5009.1a2aa685.chunk.js.map
                ├── 5502.14766ceb.chunk.js
                ├── 5502.14766ceb.chunk.js.map
                ├── 62.b40b6fbd.chunk.js
                ├── 62.b40b6fbd.chunk.js.map
                ├── 6453.8c3fba0e.chunk.js
                ├── 6453.8c3fba0e.chunk.js.map
                ├── 6455.8e6b5278.chunk.js
                ├── 6455.8e6b5278.chunk.js.map
                ├── 646.6aac5035.chunk.js
                ├── 646.6aac5035.chunk.js.LICENSE.txt
                ├── 646.6aac5035.chunk.js.map
                ├── 6516.3948f7b4.chunk.js
                ├── 6516.3948f7b4.chunk.js.map
                ├── 6725.6ad72d9d.chunk.js
                ├── 6823.e10e9817.chunk.js
                ├── 6823.e10e9817.chunk.js.map
                ├── 6865.afd592a9.chunk.js
                ├── 6865.afd592a9.chunk.js.map
                ├── 6977.4218876a.chunk.js
                ├── 6977.4218876a.chunk.js.LICENSE.txt
                ├── 6977.4218876a.chunk.js.map
                ├── 7069.02ce9149.chunk.js
                ├── 7069.02ce9149.chunk.js.map
                ├── 7513.37f12f0e.chunk.js
                ├── 7513.37f12f0e.chunk.js.map
                ├── 7550.0cfdabcf.chunk.js
                ├── 7550.0cfdabcf.chunk.js.map
                ├── 7681.ee495de8.chunk.js
                ├── 7681.ee495de8.chunk.js.LICENSE.txt
                ├── 7681.ee495de8.chunk.js.map
                ├── 7841.37a92b31.chunk.js
                ├── 7841.37a92b31.chunk.js.map
                ├── 7854.ed7e04cc.chunk.js
                ├── 7854.ed7e04cc.chunk.js.map
                ├── 8151.87df400e.chunk.js
                ├── 8151.87df400e.chunk.js.map
                ├── 8195.55a334cf.chunk.js
                ├── 8195.55a334cf.chunk.js.map
                ├── 8218.b7de3259.chunk.js
                ├── 8218.b7de3259.chunk.js.map
                ├── 8234.f2f9a7db.chunk.js
                ├── 8234.f2f9a7db.chunk.js.map
                ├── 8332.9aa74d00.chunk.js
                ├── 8332.9aa74d00.chunk.js.map
                ├── 8449.676bcc94.chunk.js
                ├── 8449.676bcc94.chunk.js.map
                ├── 8660.7fdeafe8.chunk.js
                ├── 8660.7fdeafe8.chunk.js.map
                ├── 9413.aea20916.chunk.js
                ├── 9413.aea20916.chunk.js.map
                ├── 9448.cd4e8095.chunk.js
                ├── 9448.cd4e8095.chunk.js.map
                ├── 9459.753274fe.chunk.js
                ├── 9459.753274fe.chunk.js.map
                ├── 9573.5ba95804.chunk.js
                ├── 9573.5ba95804.chunk.js.map
                ├── 9664.9e69f3bc.chunk.js
                ├── 9664.9e69f3bc.chunk.js.map
                ├── 9844.6366c533.chunk.js
                ├── 9844.6366c533.chunk.js.map
                ├── main.4cda12e2.js
                ├── main.4cda12e2.js.LICENSE.txt
                └── main.4cda12e2.js.map
```

# Files

--------------------------------------------------------------------------------
/pkg/agent/agent_plan_executor.go:
--------------------------------------------------------------------------------

```go
package agent

import (
	"context"
	"encoding/json"
	"fmt"
	"strings"
	"time"

	"github.com/google/uuid"
	"github.com/versus-control/ai-infrastructure-agent/pkg/types"
)

// ========== Interface defines ==========

// PlanExecutorInterface defines plan execution functionality
//
// Available Functions:
//   - ExecuteConfirmedPlanWithDryRun() : Execute confirmed plans with dry-run support
//   - simulatePlanExecution()          : Simulate plan execution for dry-run mode
//   - executeExecutionStep()           : Execute individual plan steps
//   - executeCreateAction()            : Execute create actions via MCP tools
//   - executeQueryAction()             : Execute query actions via MCP tools
//   - executeNativeMCPTool()          : Execute native MCP tool calls
//   - executeUpdateAction()            : Execute update actions on existing resources
//   - executeDeleteAction()            : Execute delete actions on resources
//   - executeValidateAction()          : Execute validation actions
//   - updateStateFromMCPResult()       : Update state from MCP operation results
//   - extractResourceTypeFromStep()    : Extract resource type from execution step
//   - getAvailableToolsContext()       : Get available tools context for AI prompts
//   - persistCurrentState()            : Persist current state to storage
//   - extractResourceIDFromResponse()  : Extract AWS resource IDs from responses
//   - waitForResourceReady()           : Wait for AWS resources to be ready before continuing
//   - checkResourceState()             : Check if a specific AWS resource is ready
//   - checkNATGatewayState()           : Check if NAT gateway is available
//   - checkRDSInstanceState()          : Check if RDS instance is available
//   - storeResourceMapping()           : Store step-to-resource ID mappings
//
// This file manages the execution of infrastructure plans, including dry-run
// capabilities, progress tracking, and state management integration.
//
// Usage Example:
//   1. execution := agent.ExecuteConfirmedPlanWithDryRun(ctx, decision, progressChan, false)
//   2. // Monitor execution through progressChan updates

// ExecuteConfirmedPlanWithRecovery executes a plan with UI-coordinated recovery
func (a *StateAwareAgent) ExecuteConfirmedPlanWithRecovery(ctx context.Context, decision *types.AgentDecision, progressChan chan<- *types.ExecutionUpdate, dryRun bool, coordinator RecoveryCoordinator) (*types.PlanExecution, error) {
	if dryRun {
		// Dry run doesn't need recovery coordination
		return a.ExecuteConfirmedPlanWithDryRun(ctx, decision, progressChan, dryRun)
	}

	a.Logger.WithFields(map[string]interface{}{
		"decision_id": decision.ID,
		"action":      decision.Action,
		"plan_steps":  len(decision.ExecutionPlan),
	}).Info("Executing confirmed plan with recovery coordination")

	// Create execution plan
	execution := &types.PlanExecution{
		ID:        uuid.New().String(),
		Name:      fmt.Sprintf("Execute %s", decision.Action),
		Status:    "running",
		StartedAt: time.Now(),
		Steps:     []*types.ExecutionStep{},
		Changes:   []*types.ChangeDetection{},
		Errors:    []string{},
	}

	// Send initial progress update
	if progressChan != nil {
		progressChan <- &types.ExecutionUpdate{
			Type:        "execution_started",
			ExecutionID: execution.ID,
			Message:     "Starting plan execution with recovery",
			Timestamp:   time.Now(),
		}
	}

	// Define default recovery strategy
	defaultRecoveryStrategy := &RecoveryStrategy{
		MaxAttempts:          1,
		EnableAIConsultation: true,
		AllowToolSwapping:    true,
		AllowParameterMod:    true,
		TimeoutPerAttempt:    5 * time.Minute,
	}

	// Execute each step in the plan with ReAct-style recovery
	for i, planStep := range decision.ExecutionPlan {
		// Define a custom type for the context key
		type contextKey string
		const stepNumberKey contextKey = "step_number"

		// Add step number to context for tracking
		stepCtx := context.WithValue(ctx, stepNumberKey, i+1)

		if progressChan != nil {
			progressChan <- &types.ExecutionUpdate{
				Type:        "step_started",
				ExecutionID: execution.ID,
				StepID:      planStep.ID,
				Message:     fmt.Sprintf("Starting step %d/%d: %s", i+1, len(decision.ExecutionPlan), planStep.Name),
				Timestamp:   time.Now(),
			}
		}

		// Execute the step with ReAct-style recovery and UI coordination
		step, err := a.ExecuteStepWithRecoveryAndCoordinator(stepCtx, planStep, execution, progressChan, defaultRecoveryStrategy, coordinator)
		if err != nil {
			execution.Status = "failed"
			execution.Errors = append(execution.Errors, fmt.Sprintf("Step %s failed after recovery attempts: %v", planStep.ID, err))

			if progressChan != nil {
				progressChan <- &types.ExecutionUpdate{
					Type:        "step_failed_final",
					ExecutionID: execution.ID,
					StepID:      planStep.ID,
					Message:     fmt.Sprintf("Step failed permanently after recovery attempts: %v", err),
					Error:       err.Error(),
					Timestamp:   time.Now(),
				}
			}
			break
		}

		execution.Steps = append(execution.Steps, step)

		// 🔥 CRITICAL: Save state after each successful step
		// This ensures that if later steps fail, we don't lose track of successfully created resources
		a.Logger.WithField("step_id", planStep.ID).Info("Attempting to persist state after successful step")

		if err := a.persistCurrentState(); err != nil {
			a.Logger.WithError(err).WithField("step_id", planStep.ID).Error("CRITICAL: Failed to persist state after successful step - this may cause state inconsistency")
			// Don't fail the execution for state persistence issues, but make it very visible
		} else {
			a.Logger.WithField("step_id", planStep.ID).Info("Successfully persisted state after step completion")
		}
	}

	// Calculate and set final status
	if execution.Status != "failed" {
		execution.Status = "completed"
	}

	now := time.Now()
	execution.CompletedAt = &now

	// Send final progress update
	if progressChan != nil {
		progressChan <- &types.ExecutionUpdate{
			Type:        "execution_completed",
			ExecutionID: execution.ID,
			Message:     fmt.Sprintf("Execution %s", execution.Status),
			Timestamp:   time.Now(),
		}
	}

	a.Logger.WithFields(map[string]interface{}{
		"execution_id":   execution.ID,
		"status":         execution.Status,
		"total_steps":    len(execution.Steps),
		"total_errors":   len(execution.Errors),
		"execution_time": execution.CompletedAt.Sub(execution.StartedAt),
	}).Info("Plan execution completed")

	return execution, nil
}

// ExecuteConfirmedPlanWithDryRun executes a confirmed execution plan with a specific dry run setting
func (a *StateAwareAgent) ExecuteConfirmedPlanWithDryRun(ctx context.Context, decision *types.AgentDecision, progressChan chan<- *types.ExecutionUpdate, dryRun bool) (*types.PlanExecution, error) {

	a.Logger.WithFields(map[string]interface{}{
		"decision_id": decision.ID,
		"action":      decision.Action,
		"plan_steps":  len(decision.ExecutionPlan),
	}).Info("Executing confirmed plan")

	a.Logger.WithFields(map[string]interface{}{
		"dry_run":           dryRun,
		"progress_chan_nil": progressChan == nil,
		"execution_plan":    len(decision.ExecutionPlan),
	}).Debug("ExecuteConfirmedPlan debug info")

	if dryRun {
		a.Logger.Info("Dry run mode - simulating execution")
		a.Logger.Debug("About to call simulatePlanExecution")
		result := a.simulatePlanExecution(decision, progressChan)
		a.Logger.WithField("simulation_result", result.Status).Debug("Simulation completed")
		return result, nil
	}

	// Create execution plan
	execution := &types.PlanExecution{
		ID:        uuid.New().String(),
		Name:      fmt.Sprintf("Execute %s", decision.Action),
		Status:    "running",
		StartedAt: time.Now(),
		Steps:     []*types.ExecutionStep{},
		Changes:   []*types.ChangeDetection{},
		Errors:    []string{},
	}

	// Send initial progress update
	if progressChan != nil {
		progressChan <- &types.ExecutionUpdate{
			Type:        "execution_started",
			ExecutionID: execution.ID,
			Message:     "Starting plan execution",
			Timestamp:   time.Now(),
		}
	}

	// Define a custom type for the context key
	type contextKey string

	// Define a constant for the key
	const stepNumberKey contextKey = "step_number"

	// Define default recovery strategy
	defaultRecoveryStrategy := &RecoveryStrategy{
		MaxAttempts:          1,
		EnableAIConsultation: true,
		AllowToolSwapping:    true,
		AllowParameterMod:    true,
		TimeoutPerAttempt:    5 * time.Minute,
	}

	// Execute each step in the plan with ReAct-style recovery
	for i, planStep := range decision.ExecutionPlan {
		stepCtx := context.WithValue(ctx, stepNumberKey, i+1)

		// Send step started update
		if progressChan != nil {
			progressChan <- &types.ExecutionUpdate{
				Type:        "step_started",
				ExecutionID: execution.ID,
				StepID:      planStep.ID,
				Message:     fmt.Sprintf("Starting step %d/%d: %s", i+1, len(decision.ExecutionPlan), planStep.Name),
				Timestamp:   time.Now(),
			}
		}

		// Execute the step with ReAct-style recovery
		step, err := a.ExecuteStepWithRecovery(stepCtx, planStep, execution, progressChan, defaultRecoveryStrategy)
		if err != nil {
			execution.Status = "failed"
			execution.Errors = append(execution.Errors, fmt.Sprintf("Step %s failed after all recovery attempts: %v", planStep.ID, err))

			if progressChan != nil {
				progressChan <- &types.ExecutionUpdate{
					Type:        "step_failed_final",
					ExecutionID: execution.ID,
					StepID:      planStep.ID,
					Message:     fmt.Sprintf("Step failed permanently after recovery attempts: %v", err),
					Error:       err.Error(),
					Timestamp:   time.Now(),
				}
			}
			break
		}

		execution.Steps = append(execution.Steps, step)

		// 🔥 CRITICAL: Save state after each successful step
		// This ensures that if later steps fail, we don't lose track of successfully created resources
		a.Logger.WithField("step_id", planStep.ID).Info("Attempting to persist state after successful step")

		if err := a.persistCurrentState(); err != nil {
			a.Logger.WithError(err).WithField("step_id", planStep.ID).Error("CRITICAL: Failed to persist state after successful step - this may cause state inconsistency")
			// Don't fail the execution for state persistence issues, but make it very visible
		} else {
			a.Logger.WithField("step_id", planStep.ID).Info("Successfully persisted state after step completion")
		}

		// Send step completed update
		if progressChan != nil {
			progressChan <- &types.ExecutionUpdate{
				Type:        "step_completed",
				ExecutionID: execution.ID,
				StepID:      planStep.ID,
				Message:     fmt.Sprintf("Completed step %d/%d: %s", i+1, len(decision.ExecutionPlan), planStep.Name),
				Timestamp:   time.Now(),
			}
		}
	}

	// Complete execution
	now := time.Now()
	execution.CompletedAt = &now
	if execution.Status != "failed" {
		execution.Status = "completed"
	}

	// Update decision record
	decision.ExecutedAt = &now
	if execution.Status == "failed" {
		decision.Result = "failed"
		decision.Error = strings.Join(execution.Errors, "; ")
	} else {
		decision.Result = "success"
	}

	// Send final progress update
	if progressChan != nil {
		progressChan <- &types.ExecutionUpdate{
			Type:        "execution_completed",
			ExecutionID: execution.ID,
			Message:     fmt.Sprintf("Plan execution %s", execution.Status),
			Timestamp:   time.Now(),
		}
	}

	a.Logger.WithFields(map[string]interface{}{
		"execution_id": execution.ID,
		"status":       execution.Status,
		"steps":        len(execution.Steps),
	}).Info("Plan execution completed")

	return execution, nil
}

// simulatePlanExecution simulates plan execution for dry run mode
func (a *StateAwareAgent) simulatePlanExecution(decision *types.AgentDecision, progressChan chan<- *types.ExecutionUpdate) *types.PlanExecution {
	a.Logger.WithField("plan_steps", len(decision.ExecutionPlan)).Debug("Starting simulatePlanExecution")

	now := time.Now()
	execution := &types.PlanExecution{
		ID:        uuid.New().String(),
		Name:      fmt.Sprintf("Simulate %s", decision.Action),
		Status:    "running",
		StartedAt: now,
		Steps:     []*types.ExecutionStep{},
		Changes:   []*types.ChangeDetection{},
		Errors:    []string{},
	}

	a.Logger.WithField("execution_id", execution.ID).Debug("Created execution plan")

	// Send initial update
	if progressChan != nil {
		a.Logger.Debug("Sending initial progress update")
		select {
		case progressChan <- &types.ExecutionUpdate{
			Type:        "execution_started",
			ExecutionID: execution.ID,
			Message:     "Starting plan simulation (dry run)",
			Timestamp:   time.Now(),
		}:
			a.Logger.Debug("Initial progress update sent successfully")
		case <-time.After(time.Second * 5):
			a.Logger.Error("Timeout sending initial progress update - channel might be blocked")
		}
	} else {
		a.Logger.Debug("Progress channel is nil - skipping initial update")
	}

	a.Logger.WithField("steps_to_simulate", len(decision.ExecutionPlan)).Debug("Starting step simulation loop")

	// Simulate each step
	for i, planStep := range decision.ExecutionPlan {
		a.Logger.WithFields(map[string]interface{}{
			"step_number": i + 1,
			"step_id":     planStep.ID,
			"step_name":   planStep.Name,
		}).Debug("Simulating step")

		// Send step started update
		if progressChan != nil {
			select {
			case progressChan <- &types.ExecutionUpdate{
				Type:        "step_started",
				ExecutionID: execution.ID,
				StepID:      planStep.ID,
				Message:     fmt.Sprintf("Simulating step %d/%d: %s", i+1, len(decision.ExecutionPlan), planStep.Name),
				Timestamp:   time.Now(),
			}:
				a.Logger.Debug("Step started update sent")
			case <-time.After(time.Second * 2):
				a.Logger.Warn("Timeout sending step started update")
			}
		}

		// Simulate step execution with delay
		a.Logger.Debug("Sleeping for step simulation delay")
		time.Sleep(time.Millisecond * 500)

		stepStart := time.Now()
		stepEnd := stepStart.Add(time.Millisecond * 500)

		step := &types.ExecutionStep{
			ID:          planStep.ID,
			Name:        planStep.Name,
			Status:      "completed",
			Resource:    planStep.ResourceID,
			Action:      planStep.Action,
			StartedAt:   &stepStart,
			CompletedAt: &stepEnd,
			Duration:    time.Millisecond * 500,
			Output:      map[string]interface{}{"simulated": true, "message": "Dry run - no actual changes made"},
		}

		execution.Steps = append(execution.Steps, step)
		a.Logger.WithField("steps_completed", len(execution.Steps)).Debug("Added step to execution")

		// Send step completed update
		if progressChan != nil {
			select {
			case progressChan <- &types.ExecutionUpdate{
				Type:        "step_completed",
				ExecutionID: execution.ID,
				StepID:      planStep.ID,
				Message:     fmt.Sprintf("Simulated step %d/%d: %s", i+1, len(decision.ExecutionPlan), planStep.Name),
				Timestamp:   time.Now(),
			}:
				a.Logger.Debug("Step completed update sent")
			case <-time.After(time.Second * 2):
				a.Logger.Warn("Timeout sending step completed update")
			}
		}
	}

	a.Logger.Debug("Completed all step simulations, finalizing execution")

	// Complete simulation
	completion := time.Now()
	execution.CompletedAt = &completion
	execution.Status = "completed"

	// Send final update
	if progressChan != nil {
		select {
		case progressChan <- &types.ExecutionUpdate{
			Type:        "execution_completed",
			ExecutionID: execution.ID,
			Message:     "Plan simulation completed (dry run)",
			Timestamp:   time.Now(),
		}:
			a.Logger.Debug("Final progress update sent")
		case <-time.After(time.Second * 2):
			a.Logger.Warn("Timeout sending final progress update")
		}
	}

	a.Logger.WithFields(map[string]interface{}{
		"execution_id": execution.ID,
		"status":       execution.Status,
		"steps":        len(execution.Steps),
	}).Info("Plan simulation completed")

	return execution
}

// executeExecutionStep executes a single step in the execution plan
func (a *StateAwareAgent) executeExecutionStep(planStep *types.ExecutionPlanStep, execution *types.PlanExecution, progressChan chan<- *types.ExecutionUpdate) (*types.ExecutionStep, error) {
	startTime := time.Now()

	step := &types.ExecutionStep{
		ID:        planStep.ID,
		Name:      planStep.Name,
		Status:    "running",
		Resource:  planStep.ResourceID,
		Action:    planStep.Action,
		StartedAt: &startTime,
	}

	// Send progress update for step details
	if progressChan != nil {
		progressChan <- &types.ExecutionUpdate{
			Type:        "step_progress",
			ExecutionID: execution.ID,
			StepID:      planStep.ID,
			Message:     fmt.Sprintf("Executing: %s", planStep.Description),
			Timestamp:   time.Now(),
		}
	}

	// Execute based on action type
	var result map[string]interface{}
	var err error

	switch planStep.Action {
	case "create":
		result, err = a.executeCreateAction(planStep, progressChan, execution.ID)
	case "query":
		// Query action - executes MCP tools for data retrieval (unified with create)
		result, err = a.executeQueryAction(planStep, progressChan, execution.ID)
	// case "update":
	// 	result, err = a.executeUpdateAction(ctx, planStep, progressChan, execution.ID)
	// case "delete":
	// 	result, err = a.executeDeleteAction(planStep, progressChan, execution.ID)
	// case "validate":
	// 	result, err = a.executeValidateAction(planStep, progressChan, execution.ID)
	default:
		err = fmt.Errorf("unknown action type: %s", planStep.Action)
	}

	// Complete the step
	endTime := time.Now()
	step.CompletedAt = &endTime
	step.Duration = endTime.Sub(startTime)

	if err != nil {
		step.Status = "failed"
		step.Error = err.Error()
	} else {
		step.Status = "completed"
		step.Output = result
	}

	return step, err
}

// executeCreateAction handles resource creation using native MCP tool calls
func (a *StateAwareAgent) executeCreateAction(planStep *types.ExecutionPlanStep, progressChan chan<- *types.ExecutionUpdate, executionID string) (map[string]interface{}, error) {
	// Send progress update
	if progressChan != nil {
		progressChan <- &types.ExecutionUpdate{
			Type:        "step_progress",
			ExecutionID: executionID,
			StepID:      planStep.ID,
			Message:     fmt.Sprintf("Creating %s resource: %s", planStep.ResourceID, planStep.Name),
			Timestamp:   time.Now(),
		}
	}

	// Use native MCP tool call approach
	return a.executeNativeMCPTool(planStep, progressChan, executionID)
}

// executeQueryAction handles data retrieval/query operations using native MCP tool calls
func (a *StateAwareAgent) executeQueryAction(planStep *types.ExecutionPlanStep, progressChan chan<- *types.ExecutionUpdate, executionID string) (map[string]interface{}, error) {
	// Send progress update
	if progressChan != nil {
		progressChan <- &types.ExecutionUpdate{
			Type:        "step_progress",
			ExecutionID: executionID,
			StepID:      planStep.ID,
			Message:     fmt.Sprintf("Querying resource: %s", planStep.Name),
			Timestamp:   time.Now(),
		}
	}

	// Execute the MCP tool using the same path as create
	return a.executeNativeMCPTool(planStep, progressChan, executionID)
}

// executeNativeMCPTool executes MCP tools directly with AI-provided parameters
func (a *StateAwareAgent) executeNativeMCPTool(planStep *types.ExecutionPlanStep, _ chan<- *types.ExecutionUpdate, _ string) (map[string]interface{}, error) {
	toolName := planStep.MCPTool

	if a.config.EnableDebug {
		a.Logger.WithFields(map[string]interface{}{
			"tool_name":       toolName,
			"step_id":         planStep.ID,
			"tool_parameters": planStep.ToolParameters,
		}).Info("Executing native MCP tool call")
	}

	// Ensure MCP capabilities are discovered
	if err := a.ensureMCPCapabilities(); err != nil {
		return nil, fmt.Errorf("failed to ensure MCP capabilities: %w", err)
	}

	// Validate tool exists in discovered capabilities
	a.capabilityMutex.RLock()
	toolInfo, exists := a.mcpTools[toolName]
	availableTools := make([]string, 0, len(a.mcpTools))
	for tool := range a.mcpTools {
		availableTools = append(availableTools, tool)
	}
	a.capabilityMutex.RUnlock()

	if !exists {
		a.Logger.WithFields(map[string]interface{}{
			"requested_tool":  toolName,
			"available_tools": availableTools,
			"tools_count":     len(availableTools),
		}).Error("MCP tool not found - debugging tool discovery issue")
		return nil, fmt.Errorf("MCP tool %s not found in discovered capabilities. Available tools: %v", toolName, availableTools)
	}

	// Prepare tool arguments - start with AI-provided parameters
	arguments := make(map[string]interface{})

	for key, value := range planStep.ToolParameters {
		if strValue, ok := value.(string); ok {
			if strings.Contains(strValue, "{{") && strings.Contains(strValue, "}}") {
				if strings.Count(strValue, "{{") > 1 && strings.Contains(strValue, "},{{") {
					// Handles comma-separated: "{{ref1}},{{ref2}},{{ref3}}"
					parts := strings.Split(strValue, ",")
					resolvedParts := make([]string, 0, len(parts))

					for _, part := range parts {
						part = strings.TrimSpace(part)
						if strings.Contains(part, "{{") && strings.Contains(part, "}}") {
							resolvedValue, err := a.resolveDependencyReference(part)
							if err != nil {
								return nil, fmt.Errorf("failed to resolve dependency reference %s in comma-separated list for parameter %s: %w", part, key, err)
							}
							resolvedParts = append(resolvedParts, resolvedValue)
						} else {
							resolvedParts = append(resolvedParts, part)
						}
					}

					// Join resolved values back with comma
					arguments[key] = strings.Join(resolvedParts, ",")

					if a.config.EnableDebug {
						a.Logger.WithFields(map[string]interface{}{
							"key":            key,
							"original_value": strValue,
							"resolved_value": arguments[key],
							"parts_resolved": len(resolvedParts),
						}).Info("Successfully resolved comma-separated dependency references")
					}
				} else {
					// Handles single reference: "{{step-id.field}}"
					resolvedValue, err := a.resolveDependencyReference(strValue)
					if err != nil {
						return nil, fmt.Errorf("failed to resolve dependency reference %s for parameter %s: %w", strValue, key, err)
					}

					// Check if the resolved value is a JSON array string
					if strings.HasPrefix(resolvedValue, "[") && strings.HasSuffix(resolvedValue, "]") {
						var arrayValue []interface{}
						if err := json.Unmarshal([]byte(resolvedValue), &arrayValue); err == nil {
							// Successfully parsed as JSON array - use it as array
							arguments[key] = arrayValue

							if a.config.EnableDebug {
								a.Logger.WithFields(map[string]interface{}{
									"key":            key,
									"original_value": strValue,
									"resolved_type":  "array",
									"array_length":   len(arrayValue),
								}).Info("Successfully resolved dependency reference as JSON array")
							}
						} else {
							// Failed to parse - use as string
							arguments[key] = resolvedValue

							if a.config.EnableDebug {
								a.Logger.WithFields(map[string]interface{}{
									"key":            key,
									"original_value": strValue,
									"resolved_value": resolvedValue,
								}).Info("Successfully resolved dependency reference as string")
							}
						}
					} else {
						// Not a JSON array - use as string
						arguments[key] = resolvedValue

						if a.config.EnableDebug {
							a.Logger.WithFields(map[string]interface{}{
								"key":            key,
								"original_value": strValue,
								"resolved_value": resolvedValue,
							}).Info("Successfully resolved dependency reference")
						}
					}
				}
			} else {
				arguments[key] = value
			}
		} else if arrayValue, ok := value.([]interface{}); ok {
			// Handles array format: ["{{ref1}}", "{{ref2}}"]
			resolvedArray := make([]interface{}, len(arrayValue))
			for i, item := range arrayValue {
				if strItem, ok := item.(string); ok && strings.Contains(strItem, "{{") && strings.Contains(strItem, "}}") {
					resolvedValue, err := a.resolveDependencyReference(strItem)
					if err != nil {
						return nil, fmt.Errorf("failed to resolve dependency reference %s in array parameter %s[%d]: %w", strItem, key, i, err)
					}

					resolvedArray[i] = resolvedValue
				} else {
					resolvedArray[i] = item
				}
			}
			arguments[key] = resolvedArray
		} else {
			arguments[key] = value
		}
	}

	// Fill in missing required parameters with intelligent defaults
	// if err := a.addMissingRequiredParameters(toolName, arguments, toolInfo); err != nil {
	// 	return nil, fmt.Errorf("failed to add required parameters for tool %s: %w", toolName, err)
	// }

	// Validate arguments before MCP call
	if err := a.validateNativeMCPArguments(toolName, arguments, toolInfo); err != nil {
		return nil, fmt.Errorf("invalid arguments for MCP tool %s: %w", toolName, err)
	}

	// Call the actual MCP tool
	result, err := a.callMCPTool(toolName, arguments)
	if err != nil {
		return nil, fmt.Errorf("MCP tool call failed: %w", err)
	}

	// Extract actual resource ID from MCP response
	resourceID, err := a.extractResourceIDFromResponse(result, toolName)
	if err != nil {
		return nil, fmt.Errorf("failed to extract resource ID from MCP response for tool %s: %w", toolName, err)
	}

	// Update the plan step with the actual resource ID so it gets stored correctly
	planStep.ResourceID = resourceID

	// Store the mapping of plan step ID to actual resource ID
	a.storeResourceMapping(planStep.ID, resourceID)

	// Wait for resource to be ready if it has dependencies
	if err := a.waitForResourceReady(toolName, resourceID); err != nil {
		a.Logger.WithError(err).WithFields(map[string]interface{}{
			"step_id":     planStep.ID,
			"tool_name":   toolName,
			"resource_id": resourceID,
		}).Error("Failed to wait for resource to be ready")
		return nil, fmt.Errorf("resource %s not ready: %w", resourceID, err)
	}

	// Update state manager with the new resource
	if err := a.updateStateFromMCPResult(planStep, result); err != nil {
		a.Logger.WithError(err).WithFields(map[string]interface{}{
			"step_id":     planStep.ID,
			"tool_name":   toolName,
			"resource_id": resourceID,
			"result":      result,
		}).Error("CRITICAL: Failed to update state after resource creation - this may cause state inconsistency")

		// Still continue execution but ensure this is visible
		return nil, fmt.Errorf("failed to update state after creating resource %s: %w", resourceID, err)
	}

	// Create result map for return
	resultMap := map[string]interface{}{
		"resource_id":  resourceID,
		"plan_step_id": planStep.ID,
		"mcp_tool":     toolName,
		"mcp_response": result,
	}

	return resultMap, nil
}

// // executeUpdateAction handles resource updates using real MCP tools
// func (a *StateAwareAgent) executeUpdateAction(_ context.Context, planStep *types.ExecutionPlanStep, progressChan chan<- *types.ExecutionUpdate, executionID string) (map[string]interface{}, error) {
// 	// Send progress update
// 	if progressChan != nil {
// 		progressChan <- &types.ExecutionUpdate{
// 			Type:        "step_progress",
// 			ExecutionID: executionID,
// 			StepID:      planStep.ID,
// 			Message:     fmt.Sprintf("Updating %s resource: %s", planStep.ResourceID, planStep.Name),
// 			Timestamp:   time.Now(),
// 		}
// 	}

// 	// For update actions, we mainly just simulate for now since the focus is on create operations
// 	// The native MCP approach will be extended to update/delete actions in future iterations
// 	a.Logger.WithField("step_id", planStep.ID).Info("Simulating update action as focus is on create operations")
// 	time.Sleep(time.Second * 1)
// 	return map[string]interface{}{
// 		"resource_id": planStep.ResourceID,
// 		"status":      "updated",
// 		"message":     fmt.Sprintf("%s updated successfully (simulated)", planStep.Name),
// 		"changes":     planStep.Parameters,
// 		"simulated":   true,
// 	}, nil
// }

// // executeDeleteAction handles resource deletion
// func (a *StateAwareAgent) executeDeleteAction(planStep *types.ExecutionPlanStep, progressChan chan<- *types.ExecutionUpdate, executionID string) (map[string]interface{}, error) {
// 	// Send progress update
// 	if progressChan != nil {
// 		progressChan <- &types.ExecutionUpdate{
// 			Type:        "step_progress",
// 			ExecutionID: executionID,
// 			StepID:      planStep.ID,
// 			Message:     fmt.Sprintf("Deleting %s resource: %s", planStep.ResourceID, planStep.Name),
// 			Timestamp:   time.Now(),
// 		}
// 	}

// 	// Simulate resource deletion
// 	time.Sleep(time.Second * 1)

// 	return map[string]interface{}{
// 		"resource_id": planStep.ResourceID,
// 		"status":      "deleted",
// 		"message":     fmt.Sprintf("%s deleted successfully", planStep.Name),
// 	}, nil
// }

// // executeValidateAction handles validation steps using real MCP tools where possible
// func (a *StateAwareAgent) executeValidateAction(planStep *types.ExecutionPlanStep, progressChan chan<- *types.ExecutionUpdate, executionID string) (map[string]interface{}, error) {
// 	// Send progress update
// 	if progressChan != nil {
// 		progressChan <- &types.ExecutionUpdate{
// 			Type:        "step_progress",
// 			ExecutionID: executionID,
// 			StepID:      planStep.ID,
// 			Message:     fmt.Sprintf("Validating %s: %s", planStep.ResourceID, planStep.Name),
// 			Timestamp:   time.Now(),
// 		}
// 	}

// 	// For validation actions, we mainly just simulate for now since the focus is on create operations
// 	// The native MCP approach will be extended to validation actions in future iterations
// 	a.Logger.WithField("step_id", planStep.ID).Info("Simulating validation action as focus is on create operations")
// 	time.Sleep(time.Millisecond * 500)
// 	return map[string]interface{}{
// 		"resource_id": planStep.ResourceID,
// 		"status":      "validated",
// 		"message":     fmt.Sprintf("%s validation completed (simulated)", planStep.Name),
// 		"checks":      []string{"basic_validation"},
// 	}, nil
// }

// updateStateFromMCPResult updates the state manager with results from MCP operations
func (a *StateAwareAgent) updateStateFromMCPResult(planStep *types.ExecutionPlanStep, result map[string]interface{}) error {
	a.Logger.WithFields(map[string]interface{}{
		"step_id":      planStep.ID,
		"step_name":    planStep.Name,
		"resource_id":  planStep.ResourceID,
		"mcp_response": result,
	}).Info("Starting state update from MCP result")

	// Create a simple properties map from MCP result
	resultData := map[string]interface{}{
		"mcp_response": result,
		"status":       "created_via_mcp",
	}

	// Extract resource type
	resourceType := a.extractResourceTypeFromStep(planStep)

	// Create a resource state entry
	resourceState := &types.ResourceState{
		ID:           planStep.ResourceID,
		Name:         planStep.Name,
		Description:  planStep.Description,
		Type:         resourceType,
		Status:       "created",
		Properties:   resultData,
		Dependencies: planStep.DependsOn,
		CreatedAt:    time.Now(),
		UpdatedAt:    time.Now(),
	}

	a.Logger.WithFields(map[string]interface{}{
		"step_id":           planStep.ID,
		"resource_state_id": resourceState.ID,
		"resource_type":     resourceState.Type,
		"dependencies":      resourceState.Dependencies,
	}).Info("Calling AddResourceToState for main AWS resource")

	// Add to state manager via MCP server
	if err := a.AddResourceToState(resourceState); err != nil {
		a.Logger.WithError(err).WithFields(map[string]interface{}{
			"step_id":           planStep.ID,
			"resource_state_id": resourceState.ID,
			"resource_type":     resourceState.Type,
		}).Error("Failed to add resource to state via MCP server")
		return fmt.Errorf("failed to add resource %s to state: %w", resourceState.ID, err)
	}

	a.Logger.WithFields(map[string]interface{}{
		"step_id":           planStep.ID,
		"resource_state_id": resourceState.ID,
		"resource_type":     resourceState.Type,
	}).Info("Successfully added main AWS resource to state")

	// Also store the resource with the step ID as the key for dependency resolution
	// This ensures that {{step-create-xxx.resourceId}} references can be resolved
	if planStep.ID != planStep.ResourceID {

		stepResourceState := &types.ResourceState{
			ID:           planStep.ID, // Use step ID as the key
			Name:         planStep.Name,
			Description:  planStep.Description + " (Step Reference)",
			Type:         "step_reference",
			Status:       "created",
			Properties:   resultData,
			Dependencies: planStep.DependsOn,
			CreatedAt:    time.Now(),
			UpdatedAt:    time.Now(),
		}

		if err := a.AddResourceToState(stepResourceState); err != nil {
			if a.config.EnableDebug {
				a.Logger.WithError(err).WithFields(map[string]interface{}{
					"step_id":          planStep.ID,
					"step_resource_id": stepResourceState.ID,
				}).Warn("Failed to add step-based resource to state - dependency resolution may be affected")
			}
			// Don't fail the whole operation for this, just log the warning
		} else {
			a.Logger.WithFields(map[string]interface{}{
				"step_id":          planStep.ID,
				"step_resource_id": stepResourceState.ID,
				"type":             "step_reference",
			}).Info("Successfully added step reference to state for dependency resolution")
		}
	} else {
		a.Logger.WithFields(map[string]interface{}{
			"step_id":     planStep.ID,
			"resource_id": planStep.ResourceID,
			"reason":      "step_id equals resource_id",
		}).Info("Skipping step reference creation - not needed for dependency resolution")
	}

	a.Logger.WithFields(map[string]interface{}{
		"step_id":                planStep.ID,
		"main_resource_id":       resourceState.ID,
		"main_resource_type":     resourceState.Type,
		"step_reference_created": planStep.ID != planStep.ResourceID,
	}).Info("Successfully completed state update from MCP result")

	return nil
}

// Helper function to extract resource type from plan step
func (a *StateAwareAgent) extractResourceTypeFromStep(planStep *types.ExecutionPlanStep) string {
	// First try the resource_type parameter
	if rt, exists := planStep.Parameters["resource_type"]; exists {
		if rtStr, ok := rt.(string); ok {
			return rtStr
		}
	}

	// Try to infer from MCP tool name using pattern matcher
	if planStep.MCPTool != "" {
		resourceType := a.patternMatcher.IdentifyResourceTypeFromToolName(planStep.MCPTool)
		if resourceType != "" && resourceType != "unknown" {
			return resourceType
		}
	}

	// Try to infer from ResourceID field using pattern matcher
	if planStep.ResourceID != "" {
		// Use pattern matcher to identify resource type from ID
		resourceType := a.patternMatcher.IdentifyResourceType(planStep)
		if resourceType != "" && resourceType != "unknown" {
			return resourceType
		}
	}

	// Try to infer from step name or description using pattern matcher
	resourceType := a.patternMatcher.InferResourceTypeFromDescription(planStep.Name + " " + planStep.Description)
	if resourceType != "" && resourceType != "unknown" {
		return resourceType
	}

	return ""
}

// getAvailableToolsContext returns a formatted string of available tools for the AI to understand
func (a *StateAwareAgent) getAvailableToolsContext() (string, error) {
	a.capabilityMutex.RLock()
	toolsCount := len(a.mcpTools)
	a.capabilityMutex.RUnlock()

	if toolsCount == 0 {
		// Try to ensure capabilities are available
		if err := a.ensureMCPCapabilities(); err != nil {
			a.Logger.WithError(err).Error("Failed to ensure MCP capabilities in getAvailableToolsContext")
			return "", fmt.Errorf("failed to ensure MCP capabilities: %w", err)
		}

		// Re-check after ensuring capabilities
		a.capabilityMutex.RLock()
		toolsCount = len(a.mcpTools)
		a.capabilityMutex.RUnlock()
	}

	if toolsCount == 0 {
		return "", fmt.Errorf("no MCP tools discovered - MCP server may not be properly initialized")
	}

	// Generate dynamic MCP tools schema
	mcpToolsSchema := a.generateMCPToolsSchema()

	// Load template with MCP tools placeholder
	placeholders := map[string]string{
		"MCP_TOOLS_SCHEMAS": mcpToolsSchema,
	}

	// Use the new template-based approach
	executionContext, err := a.loadTemplateWithPlaceholders("settings/templates/tools-execution-context-optimized.txt", placeholders)
	if err != nil {
		a.Logger.WithError(err).Error("Failed to load tools execution template with placeholders")
		return "", fmt.Errorf("failed to load tools execution template: %w", err)
	}

	return executionContext, nil
}

// generateMCPToolsSchema generates the dynamic MCP tools schema section
func (a *StateAwareAgent) generateMCPToolsSchema() string {
	a.capabilityMutex.RLock()
	defer a.capabilityMutex.RUnlock()

	var context strings.Builder
	context.WriteString("=== AVAILABLE MCP TOOLS WITH FULL SCHEMAS ===\n\n")
	context.WriteString("You have direct access to these MCP tools. Use the exact tool names and parameter structures shown below.\n\n")

	// Get available categories from pattern matcher configuration
	availableCategories := a.patternMatcher.GetAvailableCategories()

	// Initialize categories with empty slices
	categories := make(map[string][]string)
	for _, category := range availableCategories {
		categories[category] = []string{}
	}

	// Ensure "Other" category exists as fallback
	if _, exists := categories["Other"]; !exists {
		categories["Other"] = []string{}
	}

	toolDetails := make(map[string]string)

	// Categorize tools using pattern matcher
	for toolName, toolInfo := range a.mcpTools {
		// Use pattern matcher to get category based on tool name and resource type patterns
		category := a.patternMatcher.GetCategoryForTool(toolName)

		// Fallback to "Other" if category not found
		if _, exists := categories[category]; !exists {
			category = "Other"
		}

		// Build detailed tool schema
		var toolDetail strings.Builder
		toolDetail.WriteString(fmt.Sprintf("  TOOL: %s\n", toolName))
		toolDetail.WriteString(fmt.Sprintf("  Description: %s\n", toolInfo.Description))

		if toolInfo.InputSchema != nil {
			if properties, ok := toolInfo.InputSchema["properties"].(map[string]interface{}); ok {
				toolDetail.WriteString("  Parameters:\n")

				// Get required fields
				requiredFields := make(map[string]bool)
				if required, ok := toolInfo.InputSchema["required"].([]interface{}); ok {
					for _, field := range required {
						if fieldStr, ok := field.(string); ok {
							requiredFields[fieldStr] = true
						}
					}
				}

				for paramName, paramSchema := range properties {
					if paramSchemaMap, ok := paramSchema.(map[string]interface{}); ok {
						requiredMark := ""
						if requiredFields[paramName] {
							requiredMark = " (REQUIRED)"
						}

						paramType := "string"
						if pType, exists := paramSchemaMap["type"]; exists {
							paramType = fmt.Sprintf("%v", pType)
						}

						description := ""
						if desc, exists := paramSchemaMap["description"]; exists {
							description = fmt.Sprintf(" - %v", desc)
						}

						toolDetail.WriteString(fmt.Sprintf("    - %s: %s%s%s\n", paramName, paramType, requiredMark, description))
					}
				}
			}
		}
		toolDetail.WriteString("\n")

		categories[category] = append(categories[category], toolName)
		toolDetails[toolName] = toolDetail.String()
	}

	// Write categorized tools with full schemas
	for category, tools := range categories {
		if len(tools) > 0 {
			context.WriteString(fmt.Sprintf("=== %s ===\n\n", category))
			for _, toolName := range tools {
				context.WriteString(toolDetails[toolName])
			}
		}
	}

	return context.String()
}

// persistCurrentState saves the current infrastructure state to persistent storage
// This ensures that successfully completed steps are not lost if later steps fail
func (a *StateAwareAgent) persistCurrentState() error {
	a.Logger.Info("Starting state persistence via MCP server")

	// Use MCP server to save the current state
	result, err := a.callMCPTool("save-state", map[string]interface{}{
		"force": true, // Force save even if state hasn't changed much
	})
	if err != nil {
		a.Logger.WithError(err).Error("Failed to call save-state MCP tool")
		return fmt.Errorf("failed to save state via MCP: %w", err)
	}

	a.Logger.WithField("result", result).Info("State persistence completed successfully via MCP server")
	return nil
}

// extractResourceIDFromResponse extracts the actual AWS resource ID from MCP response
func (a *StateAwareAgent) extractResourceIDFromResponse(result map[string]interface{}, toolName string) (string, error) {
	// Use configuration-driven extraction
	resourceType := a.patternMatcher.IdentifyResourceTypeFromToolName(toolName)
	if resourceType == "" || resourceType == "unknown" {
		return "", fmt.Errorf("could not identify resource type for tool %s", toolName)
	}

	extractedID, err := a.idExtractor.ExtractResourceID(toolName, resourceType, nil, result)
	if err != nil {
		a.Logger.WithFields(map[string]interface{}{
			"tool_name":     toolName,
			"resource_type": resourceType,
			"error":         err.Error(),
		}).Error("Failed to extract resource ID using configuration-driven approach")
		return "", fmt.Errorf("could not extract resource ID from MCP response for tool %s: %w", toolName, err)
	}

	if extractedID == "" {
		return "", fmt.Errorf("extracted empty resource ID for tool %s", toolName)
	}

	if a.config.EnableDebug {
		a.Logger.WithFields(map[string]interface{}{
			"tool_name":     toolName,
			"resource_type": resourceType,
			"resource_id":   extractedID,
		}).Info("Successfully extracted resource ID")
	}

	return extractedID, nil
}

// waitForResourceReady waits for AWS resources to be in a ready state before continuing
func (a *StateAwareAgent) waitForResourceReady(toolName, resourceID string) error {
	if a.testMode {
		return nil
	}

	// Determine if this resource type needs waiting
	needsWaiting := false
	maxWaitTime := 5 * time.Minute
	checkInterval := 15 * time.Second

	switch toolName {
	case "create-nat-gateway":
		needsWaiting = true
		maxWaitTime = 5 * time.Minute // NAT gateways typically take 2-3 minutes
	case "create-rds-db-instance", "create-database":
		needsWaiting = true
		maxWaitTime = 15 * time.Minute // RDS instances can take longer
	case "create-internet-gateway", "create-vpc", "create-subnet":
		// These are typically available immediately
		needsWaiting = false
	default:
		// For other resources, don't wait
		needsWaiting = false
	}

	if !needsWaiting {
		a.Logger.WithFields(map[string]interface{}{
			"tool_name":   toolName,
			"resource_id": resourceID,
		}).Debug("Resource type does not require waiting")
		return nil
	}

	a.Logger.WithFields(map[string]interface{}{
		"tool_name":      toolName,
		"resource_id":    resourceID,
		"max_wait_time":  maxWaitTime,
		"check_interval": checkInterval,
	}).Info("Waiting for resource to be ready")

	startTime := time.Now()
	timeout := time.After(maxWaitTime)
	ticker := time.NewTicker(checkInterval)
	defer ticker.Stop()

	for {
		select {
		case <-timeout:
			elapsed := time.Since(startTime)
			return fmt.Errorf("timeout waiting for %s %s to be ready after %v", toolName, resourceID, elapsed)

		case <-ticker.C:
			ready, err := a.checkResourceState(toolName, resourceID)
			if err != nil {
				a.Logger.WithError(err).WithFields(map[string]interface{}{
					"tool_name":   toolName,
					"resource_id": resourceID,
				}).Warn("Error checking resource state, will retry")
				continue
			}

			if ready {
				elapsed := time.Since(startTime)
				a.Logger.WithFields(map[string]interface{}{
					"tool_name":   toolName,
					"resource_id": resourceID,
					"elapsed":     elapsed,
				}).Info("Resource is ready")
				return nil
			}

			elapsed := time.Since(startTime)
			a.Logger.WithFields(map[string]interface{}{
				"tool_name":   toolName,
				"resource_id": resourceID,
				"elapsed":     elapsed,
			}).Debug("Resource not ready yet, continuing to wait")
		}
	}
}

// checkResourceState checks if a specific AWS resource is in a ready state
func (a *StateAwareAgent) checkResourceState(toolName, resourceID string) (bool, error) {
	switch toolName {
	case "create-nat-gateway":
		return a.checkNATGatewayState(resourceID)
	case "create-rds-db-instance", "create-database":
		return a.checkRDSInstanceState(resourceID)
	default:
		// For unknown resource types, assume they're ready
		return true, nil
	}
}

// checkNATGatewayState checks if a NAT gateway is available
func (a *StateAwareAgent) checkNATGatewayState(natGatewayID string) (bool, error) {
	// Try to use MCP tool to describe the NAT gateway if available
	result, err := a.callMCPTool("describe-nat-gateways", map[string]interface{}{
		"natGatewayIds": []string{natGatewayID},
	})
	if err != nil {
		// If describe tool is not available, use a simple time-based approach
		a.Logger.WithFields(map[string]interface{}{
			"nat_gateway_id": natGatewayID,
			"error":          err.Error(),
		}).Warn("describe-nat-gateways tool not available, using time-based wait")

		// NAT gateways typically take 2-3 minutes to become available
		// We'll wait a fixed amount of time and then assume it's ready
		time.Sleep(30 * time.Second)
		return true, nil
	}

	// Parse the response to check the state
	if natGateways, ok := result["natGateways"].([]interface{}); ok && len(natGateways) > 0 {
		if natGateway, ok := natGateways[0].(map[string]interface{}); ok {
			if state, ok := natGateway["state"].(string); ok {
				a.Logger.WithFields(map[string]interface{}{
					"nat_gateway_id": natGatewayID,
					"state":          state,
				}).Debug("NAT gateway state check")

				return state == "available", nil
			}
		}
	}

	return false, fmt.Errorf("could not determine NAT gateway state from response")
}

// checkRDSInstanceState checks if an RDS instance is available
func (a *StateAwareAgent) checkRDSInstanceState(dbInstanceID string) (bool, error) {
	// Try to use MCP tool to describe the RDS instance if available
	result, err := a.callMCPTool("describe-db-instances", map[string]interface{}{
		"dbInstanceIdentifier": dbInstanceID,
	})
	if err != nil {
		// If describe tool is not available, use a simple time-based approach
		a.Logger.WithFields(map[string]interface{}{
			"db_instance_id": dbInstanceID,
			"error":          err.Error(),
		}).Warn("describe-db-instances tool not available, using time-based wait")

		// RDS instances typically take 5-10 minutes to become available
		// We'll wait a fixed amount of time and then assume it's ready
		time.Sleep(60 * time.Second)
		return true, nil
	}

	// Parse the response to check the state
	if dbInstances, ok := result["dbInstances"].([]interface{}); ok && len(dbInstances) > 0 {
		if dbInstance, ok := dbInstances[0].(map[string]interface{}); ok {
			if status, ok := dbInstance["dbInstanceStatus"].(string); ok {
				a.Logger.WithFields(map[string]interface{}{
					"db_instance_id": dbInstanceID,
					"status":         status,
				}).Debug("RDS instance state check")

				return status == "available", nil
			}
		}
	}

	return false, fmt.Errorf("could not determine RDS instance state from response")
}

// storeResourceMapping stores the mapping between plan step ID and actual AWS resource ID
func (a *StateAwareAgent) storeResourceMapping(stepID, resourceID string) {
	a.mappingsMutex.Lock()
	defer a.mappingsMutex.Unlock()
	a.resourceMappings[stepID] = resourceID
}

// StoreResourceMapping is a public wrapper for storeResourceMapping for external use
func (a *StateAwareAgent) StoreResourceMapping(stepID, resourceID string) {
	a.storeResourceMapping(stepID, resourceID)
}

```
Page 97/104FirstPrevNextLast