Advertisement · 728 × 90
#
Hashtag
#awsfargate
Advertisement · 728 × 90
Preview
Building a Multimodal Cross Cloud Live Agent with ADK, Amazon Fargate, and Gemini CLI Leveraging the Google Agent Development Kit (ADK) and the underlying Gemini LLM to build cross cloud...

✍️ New blog post by xbill

Building a Multimodal Cross Cloud Live Agent with ADK, Amazon Fargate, and Gemini CLI

#python #gemini #awsfargate #geminilive

0 0 0 0
Amazon ECS adds Network Load Balancer support for Linear and Canary deployments https://aws.amazon.com/ecs/ (Amazon ECS) announces native support for linear and canary deployment strategies for ECS services using Network Load Balancers (NLB). Now, applications that commonly use NLB, such as those requiring TCP/UDP-based connections, low latency, long-lived connections, or static IP addresses, can take advantage of managed, incremental traffic shifting natively from ECS when rolling out updates. With this launch, ECS customers using NLB can shift traffic in a controlled manner during deployments, such as moving traffic in increments or starting with a small percentage to validate changes before completing a rollout. These deployment strategies provide additional confidence during updates by allowing teams to observe application behavior at each traffic-shift step, and integrate with Amazon CloudWatch alarms to automatically stop or roll back deployments if issues are detected. This is especially valuable for workloads running behind an NLB, such as online gaming backends, financial transaction systems, and real-time messaging services. To get started, select your NLB target groups, listener, and preferred deployment strategy in the ECS service configuration using the AWS Management Console, AWS CLI, or Infrastructure-as-Code tools. This can be enabled for both new and existing ECS services in all AWS commercial and AWS GovCloud (US) https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/. For more information, see the documentation for https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-linear.html and https://docs.aws.amazon.com/AmazonECS/latest/developerguide/canary-deployment.html.

Amazon ECS adds Network Load Balancer support for Linear and Canary deployments

https://aws.amazon.com/ecs/ (Amazon ECS) announces native support for linear and canary deployment strategies for ECS services using Network Load Balancers (NLB). Now, ap...

#AWS #AmazonEcs #AwsFargate #AwsGovcloudUs

0 0 0 0
Amazon ECS now publishes container health status as a CloudWatch metric https://aws.amazon.com/ecs/ (Amazon ECS) now publishes container health status as a new metric in CloudWatch Container Insights with enhanced observability. Customers can now track the operational health of their containers through a dedicated CloudWatch metric and create alarms to respond proactively to unhealthy containers. When customers configure a container health check in the container definition of an ECS task definition, Container Insights now publishes the UnHealthyContainerHealthStatus metric in the ECS/ContainerInsights namespace. The metric reports 0 for HEALTHY and 1 for UNHEALTHY. Container health state information is also available in embedded metric format (EMF) logs, providing additional context while health checks are being evaluated during the UNKNOWN state. The metric is available across cluster, service, task, and container-level dimensions, enabling customers to monitor health at their preferred level of granularity. Customers can create CloudWatch alarms on the metric to receive notifications when containers become unhealthy, allowing teams to take immediate action and maintain application reliability. To get started, enable Container Insights with enhanced observability on your ECS cluster and configure a container health check in your task definition to start collecting the metric in CloudWatch. Container health metric is available in all AWS Regions where Amazon ECS Container Insights is supported. For more information, see the https://docs.aws.amazon.com/AmazonECS/latest/developerguide/healthcheck.html and the https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Container-Insights-enhanced-observability-metrics-ECS.html.

Amazon ECS now publishes container health status as a CloudWatch metric

https://aws.amazon.com/ecs/ (Amazon ECS) now publishes container health status as a new metric in CloudWatch Container Insights with enhanced observability. Cus...

#AWS #AwsGovcloudUs #AmazonCloudwatch #AmazonEcs #AwsFargate

0 0 0 0
Preview
Amazon ECS now publishes container health status as a CloudWatch metric Amazon Elastic Container Service (Amazon ECS) now publishes container health status as a new metric in CloudWatch Container Insights with enhanced observability. Customers can now track the operational health of their containers through a dedicated CloudWatch metric and create alarms to respond proactively to unhealthy containers. When customers configure a container health check in the container definition of an ECS task definition, Container Insights now publishes the UnHealthyContainerHealthStatus metric in the ECS/ContainerInsights namespace. The metric reports 0 for HEALTHY and 1 for UNHEALTHY. Container health state information is also available in embedded metric format (EMF) logs, providing additional context while health checks are being evaluated during the UNKNOWN state. The metric is available across cluster, service, task, and container-level dimensions, enabling customers to monitor health at their preferred level of granularity. Customers can create CloudWatch alarms on the metric to receive notifications when containers become unhealthy, allowing teams to take immediate action and maintain application reliability. To get started, enable Container Insights with enhanced observability on your ECS cluster and configure a container health check in your task definition to start collecting the metric in CloudWatch. Container health metric is available in all AWS Regions where Amazon ECS Container Insights is supported. For more information, see the Amazon ECS container health checks documentation and the CloudWatch Container Insights documentation.

🆕 Amazon ECS now offers container health metrics in CloudWatch for better observability, triggering alarms for unhealthy containers. Set up health checks in task definitions to start collecting metrics. Available in all ECS Container In…

#AWS #AwsGovcloudUs #AmazonCloudwatch #AmazonEcs #AwsFargate

0 0 0 0

#AmazonEcs #AwsFargate

0 0 0 0
Amazon ECS now enables you to define weekly event windows for scheduling task retirements on AWS Fargate Amazon ECS now enables you to define weekly event windows for scheduling task retirements on AWS Fargate. This capability provides precise control over when infrastructure updates and task replacements occur, helping prevent disruption to mission-critical workloads during peak business hours. AWS Fargate is a serverless, pay-as-you-go compute engine that lets you focus on building applications without managing servers. As part of the AWS shared responsibility model, Fargate maintains the underlying infrastructure with periodic platform updates. Fargate automatically retires your tasks for these updates and notifies you about upcoming task retirements via email and the AWS Health Dashboard. By default, tasks are retired 7 days after notification, but you can configure the fargateTaskRetirementWaitPeriod account setting to extend the retirement period to 14 days or initiate immediate retirement (0 days). Previously, you could build automation using the task retirement notification and wait period to perform service updates or task replacements on your own cadence. With today's launch, you can now use the Amazon EC2 event windows interface to define weekly event windows for precise control over the timing of Fargate task retirements. For example, you can schedule task retirements for a mission-critical service that requires high uptime during weekdays by configuring retirements to occur only on weekends. To get started, configure the AWS account setting fargateEventWindows to enabled as a one-time set up. Once enabled, configure Amazon EC2 event window(s) by specifying time ranges, and associate the event window(s) with your ECS tasks by selecting Amazon ECS-managed tags as the association target. Use the aws:ecs:clusterArn tag for targeting your tasks in an ECS cluster, aws:ecs:serviceArn tag for ECS services, or aws:ecs:fargateTask with a value of true to apply the window to all Fargate tasks. This feature is now available in all commercial AWS Regions. To learn more, visit our https://docs.aws.amazon.com/AmazonECS/latest/developerguide/prepare-task-retirement.html.

Amazon ECS now enables you to define weekly event windows for scheduling task retirements on AWS Fargate

Amazon ECS now enables you to define weekly event windows for scheduling task retirements on AWS Fargate. This capability provides precise control over when inf...

#AWS #AmazonEcs #AwsFargate

2 1 1 0
Preview
Amazon ECS now enables you to define weekly event windows for scheduling task retirements on AWS Fargate Amazon ECS now enables you to define weekly event windows for scheduling task retirements on AWS Fargate. This capability provides precise control over when infrastructure updates and task replacements occur, helping prevent disruption to mission-critical workloads during peak business hours. AWS Fargate is a serverless, pay-as-you-go compute engine that lets you focus on building applications without managing servers. As part of the AWS shared responsibility model, Fargate maintains the underlying infrastructure with periodic platform updates. Fargate automatically retires your tasks for these updates and notifies you about upcoming task retirements via email and the AWS Health Dashboard. By default, tasks are retired 7 days after notification, but you can configure the fargateTaskRetirementWaitPeriod account setting to extend the retirement period to 14 days or initiate immediate retirement (0 days). Previously, you could build automation using the task retirement notification and wait period to perform service updates or task replacements on your own cadence. With today's launch, you can now use the Amazon EC2 event windows interface to define weekly event windows for precise control over the timing of Fargate task retirements. For example, you can schedule task retirements for a mission-critical service that requires high uptime during weekdays by configuring retirements to occur only on weekends. To get started, configure the AWS account setting fargateEventWindows to enabled as a one-time set up. Once enabled, configure Amazon EC2 event window(s) by specifying time ranges, and associate the event window(s) with your ECS tasks by selecting Amazon ECS-managed tags as the association target. Use the aws:ecs:clusterArn tag for targeting your tasks in an ECS cluster, aws:ecs:serviceArn tag for ECS services, or aws:ecs:fargateTask with a value of true to apply the window to all Fargate tasks. This feature is now available in all commercial AWS Regions. To learn more, visit our documentation.

🆕 Amazon ECS now schedules Fargate task retirements within weekly event windows for precise control, minimizing disruptions during peak hours. Set these windows via the Amazon EC2 interface to align with your operational needs.

#AWS #AmazonEcs #AwsFargate

1 0 0 0
Preview
How To Send .NET Crash Dumps To Slack From ECS Fargate Task

Automate .NET crash dumps on ECS Fargate using EFS, DataSync, and S3, with Lambda-powered Slack alerts and scheduled EFS cleanup. #awsfargate

0 0 0 0
AWS named as a Leader in 2025 Gartner Magic Quadrant for Cloud-Native Application Platforms and Container Management AWS was named as a Leader in the 2025 Gartner Magic Quadrant for Cloud-Native Application Platforms in two consecutive years positioned highest on "Ability to Execute", and for Container Management in three years positioned furthest for "Completeness of Vision".

AWS named as a Leader in 2025 Gartner Magic Quadrant for Cloud-Native Application Platforms and Container Management

AWS was named as a Leader i...

#AWS #AmazonElasticContainerService #AmazonElasticKubernetesService #AwsAmplify #AwsElasticBeanstalk #AwsFargate #AwsLambda #News #ThoughtLeadership

0 0 0 0
Preview
Amazon ECS announces IPv6-only support Amazon Elastic Container Service (Amazon ECS) now supports running tasks in IPv6-only subnets. With this launch, Amazon ECS tasks and services can run using only IPv6 addresses, without requiring IPv4. This enables customers to deploy containerized applications in IPv6-only environments, scale without being limited by IPv4 address availability, and meet IPv6 compliance requirements through native IPv6 support in Amazon ECS. Previously, Amazon ECS tasks always required an IPv4 address, even when launched in dual-stack subnets. This requirement could create scaling and management challenges for customers operating large fleets of containerized applications, where IPv4 address space became a bottleneck. With IPv6-only support, Amazon ECS tasks launched in IPv6-only subnets use only IPv6 addresses. This removes IPv4 as a dependency and helps organizations that must meet IPv6 adoption or regulatory mandates. The feature works across all Amazon ECS launch types and can be used with awsvpc, bridge, and host networking modes. To get started, create IPv6-only subnets in your VPC and launch Amazon ECS services or tasks in those subnets. Amazon ECS automatically detects the configuration and provisions the appropriate networking. To learn more about IPv6-only task networking and supported AWS Regions, see the Amazon ECS task networking documentation for AWS Fargate launch type and EC2 launch type. You can also read our blog post for a detailed walkthrough and migration strategies.

🆕 Amazon ECS now supports IPv6-only tasks, enabling IPv6-only environments, scaling without IPv4 limits, and meeting IPv6 compliance. Previously, IPv4 was required, but this new feature removes IPv4 dependency, aiding IPv6 adoption and regulatory compliance.

#AWS #AmazonEcs #AwsFargate

3 1 0 0
AWS named as a Leader in 2025 Gartner Magic Quadrant for Cloud-Native Application Platforms and Container Management AWS was named as a Leader in the 2025 Gartner Magic Quadrant for Cloud-Native Application Platforms in two consecutive years positioned highest on "Ability to Execute", and for Container Management in three years positioned furthest for "Completeness of Vision".

AWS named as a Leader in 2025 Gartner Magic Quadrant for Cloud-Native Application Platforms and Container Management

AWS was named as a Leader i...

#AWS #AmazonElasticContainerService #AmazonElasticKubernetesService #AwsAmplify #AwsElasticBeanstalk #AwsFargate #AwsLambda #News #ThoughtLeadership

0 0 0 0
AWS Batch now supports AWS Graviton-based Spot compute with AWS Fargate AWS Batch for ECS Fargate now supports AWS Graviton-based compute with AWS Fargate Spot. This capability helps you run fault-tolerant Arm-based applications with up to 70% discount compared to Fargate prices. AWS Graviton processors are custom-built by AWS to deliver the best price-performance for cloud workloads. AWS Batch for ECS Fargate enables customers to deploy and build workloads at scale in a serverless manner. Starting today, customers can further optimize for costs by running fault-tolerant Arm-based workloads on AWS Fargate Spot. To get started, create a new Fargate configured Compute Environment (CE), select ARM64 as the cpuArchitecture, and choose FARGATE_SPOT as the type. You can then connect it to existing job queues or create a new one for your workload. AWS Batch will leverage spare AWS Graviton-based compute capacity available in the AWS cloud for running your service or task. You can now get the simplicity of serverless compute with familiar cost optimization levers of Spot capacity with Graviton-based compute. This capability is now available for AWS Batch in all commercial and the AWS GovCloud (US) Regions. To learn more, see Batch’s updated https://docs.aws.amazon.com/batch/latest/APIReference/API_RuntimePlatform.html and AWS Batch for ECS Fargate https://docs.aws.amazon.com/batch/latest/userguide/fargate-compute-environments.html. 

AWS Batch now supports AWS Graviton-based Spot compute with AWS Fargate

AWS Batch for ECS Fargate now supports AWS Graviton-based compute with AWS Fargate Spot. This capability helps you run fault-tolerant Arm-based applications with up to 70% discount compared to F...

#AWS #AwsBatch #AwsFargate

0 0 0 0
Preview
AWS Batch now supports AWS Graviton-based Spot compute with AWS Fargate AWS Batch for ECS Fargate now supports AWS Graviton-based compute with AWS Fargate Spot. This capability helps you run fault-tolerant Arm-based applications with up to 70% discount compared to Fargate prices. AWS Graviton processors are custom-built by AWS to deliver the best price-performance for cloud workloads. AWS Batch for ECS Fargate enables customers to deploy and build workloads at scale in a serverless manner. Starting today, customers can further optimize for costs by running fault-tolerant Arm-based workloads on AWS Fargate Spot. To get started, create a new Fargate configured Compute Environment (CE), select ARM64 as the cpuArchitecture, and choose FARGATE_SPOT as the type. You can then connect it to existing job queues or create a new one for your workload. AWS Batch will leverage spare AWS Graviton-based compute capacity available in the AWS cloud for running your service or task. You can now get the simplicity of serverless compute with familiar cost optimization levers of Spot capacity with Graviton-based compute. This capability is now available for AWS Batch in all commercial and the AWS GovCloud (US) Regions. To learn more, see Batch’s updated RuntimePlatform API and AWS Batch for ECS Fargate documentation.

🆕 AWS Batch now supports Graviton-based Spot compute with Fargate, offering up to 70% savings for Arm-based applications. Use ARM64 compute environments with FARGATE_SPOT for cost-optimized, serverless workloads in all commercial and GovCloud regions.

#AWS #AwsBatch #AwsFargate

0 0 0 0
AWS Fargate now supports SOCI Index Manifest v2 for greater deployment consistency Amazon ECS customers using AWS Fargate launch mode now benefit from improved deployment consistency with SOCI Index Manifest v2 support. https://github.com/awslabs/soci-snapshotter accelerates Amazon ECS task launches by enabling containers to start running before the full container image is downloaded. SOCI Index Manifest v2 uses a cryptographic method to establish an explicit link between the image and its manifest, ensuring integrity and consistency during and across all deployment stages. To get started, create a SOCI index using the new convert subcommand in the soci CLI, available from the https://github.com/awslabs/soci-snapshotter. Once generated, push the container image along with the SOCI index to your Amazon ECR repository, and use it to launch Amazon ECS tasks on AWS Fargate. As of today, SOCI Index Manifest v2 is the default mechanism for using SOCI with ECS and Fargate. If you're still using the legacy Manifest v1 implementation, we recommend upgrading to take advantage of the improved reliability and consistency. For more information, see the https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html and the https://aws.amazon.com/blogs/containers/improving-amazon-ecs-deployment-consistency-with-soci-index-manifest-v2.

AWS Fargate now supports SOCI Index Manifest v2 for greater deployment consistency

Amazon ECS customers using AWS Fargate launch mode now benefit from improved deployment consistency with SOCI Index Manifest v2 support. https://github.com/awslabs/soc

#AWS #AmazonEcs #AwsFargate #AwsGovcloudUs

0 0 0 0
Preview
AWS Fargate now supports SOCI Index Manifest v2 for greater deployment consistency Amazon ECS customers using AWS Fargate launch mode now benefit from improved deployment consistency with SOCI Index Manifest v2 support. Seekable OCI (SOCI) accelerates Amazon ECS task launches by enabling containers to start running before the full container image is downloaded. SOCI Index Manifest v2 uses a cryptographic method to establish an explicit link between the image and its manifest, ensuring integrity and consistency during and across all deployment stages. To get started, create a SOCI index using the new convert subcommand in the soci CLI, available from the SOCI Snapshotter GitHub repository. Once generated, push the container image along with the SOCI index to your Amazon ECR repository, and use it to launch Amazon ECS tasks on AWS Fargate. As of today, SOCI Index Manifest v2 is the default mechanism for using SOCI with ECS and Fargate. If you're still using the legacy Manifest v1 implementation, we recommend upgrading to take advantage of the improved reliability and consistency. For more information, see the documentation on using SOCI Index Manifest v2 with Amazon ECS and AWS Fargate and the blog post.

🆕 AWS Fargate now defaults to SOCI Index Manifest v2 for consistent deployments. SOCI speeds up task launches and maintains image integrity. Use the soci CLI to create and push a SOCI index to Amazon ECR for Fargate tasks. Upgrade for better reliability.

#AWS #AmazonEcs #AwsFargate #AwsGovcloudUs

1 0 0 0
Amazon ECS adds the ability to set a default log driver blocking mode https://aws.amazon.com/ecs/ (Amazon ECS) is introducing a new https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html, defaultLogDriverMode, allowing you to define whether tasks in your account use "blocking" or "non-blocking" log driver mode by default, when you do not specify or omit it in your applications’ Task Definitions. A “non-blocking” log driver mode allows your applications to continue operating when log routing destinations become unavailable, therefore increasing availability if getting logs is not critical to your application, whereas “blocking” log driver mode signifies you do not want your applications to continue running if you cannot route logs to their intended destination, e.g. to record business-critical transactions or mandated by regulation. You can override this account setting for each application using the “mode” log configuration parameter in its https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html. The new defaultLogDriverMode Account Setting is enabled in all https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/. Click https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutAccountSetting.html and https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutAccountSettingDefault.html for more details on how to set the new account setting.

Amazon ECS adds the ability to set a default log driver blocking mode

https://aws.amazon.com/ecs/ (Amazon ECS) is introducing a new docs.aws.amazon.com/AmazonECS/latest/develop... defaultLogDriverMode, allowing ...

#AWS #AwsFargate #AwsGovcloudUs #AmazonEcs

0 0 0 0
Preview
Amazon ECS adds the ability to set a default log driver blocking mode Amazon Elastic Container Services (Amazon ECS) is introducing a new account setting, defaultLogDriverMode, allowing you to define whether tasks in your account use "blocking" or "non-blocking" log driver mode by default, when you do not specify or omit it in your applications’ Task Definitions. A “non-blocking” log driver mode allows your applications to continue operating when log routing destinations become unavailable, therefore increasing availability if getting logs is not critical to your application, whereas “blocking” log driver mode signifies you do not want your applications to continue running if you cannot route logs to their intended destination, e.g. to record business-critical transactions or mandated by regulation. You can override this account setting for each application using the “mode” log configuration parameter in its Task Definition. The new defaultLogDriverMode Account Setting is enabled in all AWS Regions. Click here and here for more details on how to set the new account setting.

🆕 Amazon ECS now lets you set a default log driver mode to "blocking" or "non-blocking" for tasks, enhancing flexibility. Non-blocking keeps apps running if logs fail; blocking stops them. Override defaults per app. Enabled globally.

#AWS #AwsFargate #AwsGovcloudUs #AmazonEcs

0 0 0 0
Amazon ECS now supports network fault injection experiments on AWS Fargate https://aws.amazon.com/ecs/ (Amazon ECS) now allows you to perform network fault injection experiments on your applications deployed on AWS Fargate. Fault injection experiments create disruptions to test how your applications behave, helping you improve application performance, observability, and resilience. https://aws.amazon.com/fis/ (AWS FIS) now supports 6 actions for ECS on both EC2 and Fargate: network latency, network blackhole, network packet loss, CPU stress, I/O stress, and kill process. Developers and operators can now verify the response of their application to potential network errors, some of which may also be required for regulatory compliance. By reproducing network behaviors that may cause applications to fail, you can identify gaps in application configurations, monitoring, alarms, and operational response. Amazon ECS is introducing the ability to opt-in to allow tasks to use a fault injector such as AWS FIS to perform network experiments for increasing network latency, increasing packet loss, and blackhole port testing (dropping inbound or outbound traffic) to test how your applications perform, in addition to existing resource stress experiments. The new experience is now automatically enabled in all https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/ and integration with the AWS Fault Injection Service in https://docs.aws.amazon.com/general/latest/gr/fis.html#fis_region. For more details, go to https://docs.aws.amazon.com/AmazonECS/latest/developerguide/fault-injection.html and the https://docs.aws.amazon.com/fis/latest/userguide/ecs-task-actions.html.  

Amazon ECS now supports network fault injection experiments on AWS Fargate

https://aws.amazon.com/ecs/ (Amazon ECS) now allows you to perform network fault injection experiments on your applications deployed on AWS Fargate. Fault injection experiment...

#AWS #AwsGovcloudUs #AwsFargate #AmazonEcs

0 0 0 0
Preview
Amazon ECS now supports network fault injection experiments on AWS Fargate Amazon Elastic Container Services (Amazon ECS) now allows you to perform network fault injection experiments on your applications deployed on AWS Fargate. Fault injection experiments create disruptions to test how your applications behave, helping you improve application performance, observability, and resilience. AWS Fault Injection Service (AWS FIS) now supports 6 actions for ECS on both EC2 and Fargate: network latency, network blackhole, network packet loss, CPU stress, I/O stress, and kill process. Developers and operators can now verify the response of their application to potential network errors, some of which may also be required for regulatory compliance. By reproducing network behaviors that may cause applications to fail, you can identify gaps in application configurations, monitoring, alarms, and operational response. Amazon ECS is introducing the ability to opt-in to allow tasks to use a fault injector such as AWS FIS to perform network experiments for increasing network latency, increasing packet loss, and blackhole port testing (dropping inbound or outbound traffic) to test how your applications perform, in addition to existing resource stress experiments. The new experience is now automatically enabled in all AWS Regions and integration with the AWS Fault Injection Service in those regions where AWS FIS is available. For more details, go to Amazon ECS fault Injection documentation and the AWS FIS user guide.

🆕 Amazon ECS now supports network fault injection experiments on AWS Fargate

#AWS #AwsGovcloudUs #AwsFargate #AmazonEcs

0 0 0 0
Post image

Backend routine: The AWS ECS Cluster task can fail if you try to run the image built on your Macbook with an Apple Silicon chip. Build it for AMD64 like that "docker build --platform linux/amd64 -t <your_image_name> . " 🤘 #backenddev #awsecs #docker #awsfargate #typescript #airontark #amd

0 0 0 0
Post image

Backend routine: Running the Docker container from inside my Lambda using AWS Fargate and AWS ECS 🦸 #backend #awsdev #awsfargate #awsecs #awslambda #airontark #sneakerx

0 0 0 0