Repository: getmoto/moto
Pull request #7129 (2023-12-16 19:16:03)

CognitoIDP: admin_initiate_auth() now correctly returns a Challenge when 2FA is enabled
Title: 

Summary:

Issue Encountered: In Moto version 4.2.11 with Botocore version 1.32.7 on Python 3.11, an issue was identified where the admin_initiate_auth method incorrectly returned a valid token AuthenticationResult, even when Multi-Factor Authentication (MFA) was enabled for a user. This behavior was inconsistent with the expected results, as a challenge-response (specifically for Time-based One-Time Password (TOTP)) was anticipated.

Issue link: https://github.com/getmoto/moto/issues/7125


Patch:
diff --git a/moto/cognitoidp/models.py b/moto/cognitoidp/models.py
index e8ec348a6..a2cac85fd 100644
--- a/moto/cognitoidp/models.py
+++ b/moto/cognitoidp/models.py
@@ -1449,6 +1449,19 @@ class CognitoIdpBackend(BaseBackend):
                     "Session": session,
                 }
 
+            if (
+                user.software_token_mfa_enabled
+                and user.preferred_mfa_setting == "SOFTWARE_TOKEN_MFA"
+            ):
+                session = str(random.uuid4())
+                self.sessions[session] = user_pool
+
+                return {
+                    "ChallengeName": "SOFTWARE_TOKEN_MFA",
+                    "ChallengeParameters": {},
+                    "Session": session,
+                }
+
             return self._log_user_in(user_pool, client, username)
         elif auth_flow in (AuthFlow.REFRESH_TOKEN, AuthFlow.REFRESH_TOKEN_AUTH):
             refresh_token: str = auth_parameters.get("REFRESH_TOKEN")  # type: ignore[assignment]
diff --git a/moto/dynamodb/models/__init__.py b/moto/dynamodb/models/__init__.py
index d88ca5e0d..0f289060e 100644
--- a/moto/dynamodb/models/__init__.py
+++ b/moto/dynamodb/models/__init__.py
@@ -785,8 +785,6 @@ class DynamoDBBackend(BaseBackend):
         self, statement: str, parameters: List[Dict[str, Any]]
     ) -> List[Dict[str, Any]]:
         """
-        Only SELECT-statements are supported for now.
-
         Pagination is not yet implemented.
 
         Parsing is highly experimental - please raise an issue if you find any bugs.
@@ -799,7 +797,29 @@ class DynamoDBBackend(BaseBackend):
                 item.to_json()["Attributes"] for item in table.all_items()
             ]
 
-        return partiql.query(statement, source_data, parameters)
+        return_data, updates_per_table = partiql.query(
+            statement, source_data, parameters
+        )
+
+        for table_name, updates in updates_per_table.items():
+            table = self.tables[table_name]
+            for before, after in updates:
+                if after is None and before is not None:
+                    # DELETE
+                    hash_key = DynamoType(before[table.hash_key_attr])
+                    if table.range_key_attr:
+                        range_key = DynamoType(before[table.range_key_attr])
+                    else:
+                        range_key = None
+                    table.delete_item(hash_key, range_key)
+                elif before is None and after is not None:
+                    # CREATE
+                    table.put_item(after)
+                elif before is not None and after is not None:
+                    # UPDATE
+                    table.put_item(after)
+
+        return return_data
 
     def execute_transaction(
         self, statements: List[Dict[str, Any]]
diff --git a/moto/dynamodb/parsing/partiql.py b/moto/dynamodb/parsing/partiql.py
index b60f467f8..139bce534 100644
--- a/moto/dynamodb/parsing/partiql.py
+++ b/moto/dynamodb/parsing/partiql.py
@@ -1,4 +1,4 @@
-from typing import TYPE_CHECKING, Any, Dict, List
+from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple
 
 if TYPE_CHECKING:
     from py_partiql_parser import QueryMetadata
@@ -6,7 +6,10 @@ if TYPE_CHECKING:
 
 def query(
     statement: str, source_data: Dict[str, str], parameters: List[Dict[str, Any]]
-) -> List[Dict[str, Any]]:
+) -> Tuple[
+    List[Dict[str, Any]],
+    Dict[str, List[Tuple[Optional[Dict[str, Any]], Optional[Dict[str, Any]]]]],
+]:
     from py_partiql_parser import DynamoDBStatementParser
 
     return DynamoDBStatementParser(source_data).parse(statement, parameters)
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-1.json
index 64c6193c5..12e14c147 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-1.json
@@ -879,6 +879,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "apne1-az1"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "apne1-az1"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "apne1-az1"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "apne1-az1"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "apne1-az1"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "apne1-az1"
@@ -5467,6 +5483,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "apne1-az4"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "apne1-az4"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "apne1-az4"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "apne1-az4"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "apne1-az4"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "apne1-az4"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-2.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-2.json
index ca2b0aac3..7239cfad6 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-2.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-2.json
@@ -919,6 +919,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "apne2-az1"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "apne2-az1"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "apne2-az1"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "apne2-az1"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "apne2-az1"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "apne2-az1"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "apne2-az1"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "apne2-az1"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "apne2-az1"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "apne2-az1"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "apne2-az1"
+ },
  {
   "InstanceType": "m7g.12xlarge",
   "Location": "apne2-az1"
@@ -3787,6 +3827,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "apne2-az3"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "apne2-az3"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "apne2-az3"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "apne2-az3"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "apne2-az3"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "apne2-az3"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "apne2-az3"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "apne2-az3"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "apne2-az3"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "apne2-az3"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "apne2-az3"
+ },
  {
   "InstanceType": "p2.16xlarge",
   "Location": "apne2-az3"
@@ -4871,6 +4951,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "apne2-az4"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "apne2-az4"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "apne2-az4"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "apne2-az4"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "apne2-az4"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "apne2-az4"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "apne2-az4"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "apne2-az4"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "apne2-az4"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "apne2-az4"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "apne2-az4"
+ },
  {
   "InstanceType": "m7i-flex.2xlarge",
   "Location": "apne2-az4"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-3.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-3.json
index d90ee859b..40a9a774c 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-3.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-northeast-3.json
@@ -1287,6 +1287,42 @@
   "InstanceType": "m5d.xlarge",
   "Location": "apne3-az2"
  },
+ {
+  "InstanceType": "m6g.12xlarge",
+  "Location": "apne3-az2"
+ },
+ {
+  "InstanceType": "m6g.16xlarge",
+  "Location": "apne3-az2"
+ },
+ {
+  "InstanceType": "m6g.2xlarge",
+  "Location": "apne3-az2"
+ },
+ {
+  "InstanceType": "m6g.4xlarge",
+  "Location": "apne3-az2"
+ },
+ {
+  "InstanceType": "m6g.8xlarge",
+  "Location": "apne3-az2"
+ },
+ {
+  "InstanceType": "m6g.large",
+  "Location": "apne3-az2"
+ },
+ {
+  "InstanceType": "m6g.medium",
+  "Location": "apne3-az2"
+ },
+ {
+  "InstanceType": "m6g.metal",
+  "Location": "apne3-az2"
+ },
+ {
+  "InstanceType": "m6g.xlarge",
+  "Location": "apne3-az2"
+ },
  {
   "InstanceType": "m6gd.12xlarge",
   "Location": "apne3-az2"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-south-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-south-1.json
index 31fc85109..e519cbd3c 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-south-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-south-1.json
@@ -671,6 +671,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "aps1-az1"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "aps1-az1"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "aps1-az1"
@@ -1011,6 +1027,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "aps1-az1"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "aps1-az1"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "aps1-az1"
+ },
  {
   "InstanceType": "m7g.12xlarge",
   "Location": "aps1-az1"
@@ -2811,6 +2867,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "aps1-az2"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "aps1-az2"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "aps1-az2"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "aps1-az2"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "aps1-az2"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "aps1-az2"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "aps1-az2"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "aps1-az2"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "aps1-az2"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "aps1-az2"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "aps1-az2"
+ },
  {
   "InstanceType": "m7g.12xlarge",
   "Location": "aps1-az2"
@@ -4199,6 +4295,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "aps1-az3"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "aps1-az3"
+ },
  {
   "InstanceType": "m4.10xlarge",
   "Location": "aps1-az3"
@@ -4515,6 +4627,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "aps1-az3"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "aps1-az3"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "aps1-az3"
+ },
  {
   "InstanceType": "m7g.12xlarge",
   "Location": "aps1-az3"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-southeast-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-southeast-1.json
index 0c7bb1b07..54b9c2a5c 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-southeast-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-southeast-1.json
@@ -1263,6 +1263,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "apse1-az1"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "apse1-az1"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "apse1-az1"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "apse1-az1"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "apse1-az1"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "apse1-az1"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "apse1-az1"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "apse1-az1"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "apse1-az1"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "apse1-az1"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "apse1-az1"
+ },
  {
   "InstanceType": "m6idn.12xlarge",
   "Location": "apse1-az1"
@@ -3611,6 +3651,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "apse1-az2"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "apse1-az2"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "apse1-az2"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "apse1-az2"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "apse1-az2"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "apse1-az2"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "apse1-az2"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "apse1-az2"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "apse1-az2"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "apse1-az2"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "apse1-az2"
+ },
  {
   "InstanceType": "m6idn.12xlarge",
   "Location": "apse1-az2"
@@ -5347,6 +5427,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "apse1-az3"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "apse1-az3"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "apse1-az3"
@@ -5759,6 +5855,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "apse1-az3"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "apse1-az3"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "apse1-az3"
+ },
  {
   "InstanceType": "m6idn.12xlarge",
   "Location": "apse1-az3"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-southeast-2.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-southeast-2.json
index a4a211189..3ed6b1a66 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-southeast-2.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/ap-southeast-2.json
@@ -691,6 +691,10 @@
   "InstanceType": "g5.xlarge",
   "Location": "apse2-az1"
  },
+ {
+  "InstanceType": "hpc6a.48xlarge",
+  "Location": "apse2-az1"
+ },
  {
   "InstanceType": "i2.2xlarge",
   "Location": "apse2-az1"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-central-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-central-1.json
index e0980b914..c6c399bc2 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-central-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-central-1.json
@@ -3135,6 +3135,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "euc1-az2"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "euc1-az2"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "euc1-az2"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "euc1-az2"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "euc1-az2"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "euc1-az2"
@@ -5399,6 +5415,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "euc1-az3"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "euc1-az3"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "euc1-az3"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "euc1-az3"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "euc1-az3"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "euc1-az3"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-north-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-north-1.json
index 506eeafb9..e86823f46 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-north-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-north-1.json
@@ -1943,6 +1943,22 @@
   "InstanceType": "hpc6id.32xlarge",
   "Location": "eun1-az2"
  },
+ {
+  "InstanceType": "hpc7a.12xlarge",
+  "Location": "eun1-az2"
+ },
+ {
+  "InstanceType": "hpc7a.24xlarge",
+  "Location": "eun1-az2"
+ },
+ {
+  "InstanceType": "hpc7a.48xlarge",
+  "Location": "eun1-az2"
+ },
+ {
+  "InstanceType": "hpc7a.96xlarge",
+  "Location": "eun1-az2"
+ },
  {
   "InstanceType": "i3.16xlarge",
   "Location": "eun1-az2"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-1.json
index 9f875ae60..27e5fa4d3 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-1.json
@@ -1067,6 +1067,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "euw1-az1"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "euw1-az1"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "euw1-az1"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "euw1-az1"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "euw1-az1"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "euw1-az1"
@@ -3971,6 +3987,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "euw1-az2"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "euw1-az2"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "euw1-az2"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "euw1-az2"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "euw1-az2"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "euw1-az2"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-3.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-3.json
index 9440e905d..530e409dd 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-3.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/eu-west-3.json
@@ -759,6 +759,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "euw3-az1"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "euw3-az1"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "euw3-az1"
+ },
  {
   "InstanceType": "m7i-flex.2xlarge",
   "Location": "euw3-az1"
@@ -3335,6 +3371,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "euw3-az3"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "euw3-az3"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "euw3-az3"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "euw3-az3"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "euw3-az3"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "euw3-az3"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "euw3-az3"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "euw3-az3"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "euw3-az3"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "euw3-az3"
+ },
  {
   "InstanceType": "m7i-flex.2xlarge",
   "Location": "euw3-az3"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/me-south-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/me-south-1.json
index 7f470b56c..d8f713042 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/me-south-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/me-south-1.json
@@ -563,6 +563,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "mes1-az1"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "mes1-az1"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "mes1-az1"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "mes1-az1"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "mes1-az1"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "mes1-az1"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "mes1-az1"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "mes1-az1"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "mes1-az1"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "mes1-az1"
+ },
  {
   "InstanceType": "r5.12xlarge",
   "Location": "mes1-az1"
@@ -1375,6 +1411,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "mes1-az2"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "mes1-az2"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "mes1-az2"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "mes1-az2"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "mes1-az2"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "mes1-az2"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "mes1-az2"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "mes1-az2"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "mes1-az2"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "mes1-az2"
+ },
  {
   "InstanceType": "r5.12xlarge",
   "Location": "mes1-az2"
@@ -2187,6 +2259,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "mes1-az3"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "mes1-az3"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "mes1-az3"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "mes1-az3"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "mes1-az3"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "mes1-az3"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "mes1-az3"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "mes1-az3"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "mes1-az3"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "mes1-az3"
+ },
  {
   "InstanceType": "r5.12xlarge",
   "Location": "mes1-az3"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/sa-east-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/sa-east-1.json
index 08cd8c8ba..1458024e2 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/sa-east-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/sa-east-1.json
@@ -1003,6 +1003,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "sae1-az1"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "sae1-az1"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "sae1-az1"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "sae1-az1"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "sae1-az1"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "sae1-az1"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "sae1-az1"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "sae1-az1"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "sae1-az1"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "sae1-az1"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "sae1-az1"
@@ -2439,6 +2475,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "sae1-az2"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "sae1-az2"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "sae1-az2"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "sae1-az2"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "sae1-az2"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "sae1-az2"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "sae1-az2"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "sae1-az2"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "sae1-az2"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "sae1-az2"
+ },
  {
   "InstanceType": "r5.12xlarge",
   "Location": "sae1-az2"
@@ -3719,6 +3791,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "sae1-az3"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "sae1-az3"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "sae1-az3"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "sae1-az3"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "sae1-az3"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "sae1-az3"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "sae1-az3"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "sae1-az3"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "sae1-az3"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "sae1-az3"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "sae1-az3"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-west-2.json b/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-west-2.json
index 99fd0a4a5..9efe4f6b2 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-west-2.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone-id/us-west-2.json
@@ -9931,6 +9931,42 @@
   "InstanceType": "m6id.xlarge",
   "Location": "usw2-az4"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "usw2-az4"
+ },
  {
   "InstanceType": "m7gd.12xlarge",
   "Location": "usw2-az4"
@@ -10447,6 +10483,42 @@
   "InstanceType": "r7a.xlarge",
   "Location": "usw2-az4"
  },
+ {
+  "InstanceType": "r7g.12xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "r7g.16xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "r7g.2xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "r7g.4xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "r7g.8xlarge",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "r7g.large",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "r7g.medium",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "r7g.metal",
+  "Location": "usw2-az4"
+ },
+ {
+  "InstanceType": "r7g.xlarge",
+  "Location": "usw2-az4"
+ },
  {
   "InstanceType": "r7gd.12xlarge",
   "Location": "usw2-az4"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-1.json
index 2a0fc076c..6a58414ab 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-1.json
@@ -891,6 +891,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "ap-northeast-1a"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "ap-northeast-1a"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "ap-northeast-1a"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "ap-northeast-1a"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "ap-northeast-1a"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "ap-northeast-1a"
@@ -3391,6 +3407,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "ap-northeast-1c"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "ap-northeast-1c"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "ap-northeast-1c"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "ap-northeast-1c"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "ap-northeast-1c"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "ap-northeast-1c"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-2.json b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-2.json
index d24d46565..49f96ee45 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-2.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-2.json
@@ -919,6 +919,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-northeast-2a"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-northeast-2a"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-northeast-2a"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-northeast-2a"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-northeast-2a"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-northeast-2a"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-northeast-2a"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-northeast-2a"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-northeast-2a"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-northeast-2a"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-northeast-2a"
+ },
  {
   "InstanceType": "m7g.12xlarge",
   "Location": "ap-northeast-2a"
@@ -3787,6 +3827,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-northeast-2c"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-northeast-2c"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-northeast-2c"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-northeast-2c"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-northeast-2c"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-northeast-2c"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-northeast-2c"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-northeast-2c"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-northeast-2c"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-northeast-2c"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-northeast-2c"
+ },
  {
   "InstanceType": "p2.16xlarge",
   "Location": "ap-northeast-2c"
@@ -4871,6 +4951,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-northeast-2d"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-northeast-2d"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-northeast-2d"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-northeast-2d"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-northeast-2d"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-northeast-2d"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-northeast-2d"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-northeast-2d"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-northeast-2d"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-northeast-2d"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-northeast-2d"
+ },
  {
   "InstanceType": "m7i-flex.2xlarge",
   "Location": "ap-northeast-2d"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-3.json b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-3.json
index fa2698f7f..1c2932dbc 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-3.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-northeast-3.json
@@ -2115,6 +2115,42 @@
   "InstanceType": "m5d.xlarge",
   "Location": "ap-northeast-3c"
  },
+ {
+  "InstanceType": "m6g.12xlarge",
+  "Location": "ap-northeast-3c"
+ },
+ {
+  "InstanceType": "m6g.16xlarge",
+  "Location": "ap-northeast-3c"
+ },
+ {
+  "InstanceType": "m6g.2xlarge",
+  "Location": "ap-northeast-3c"
+ },
+ {
+  "InstanceType": "m6g.4xlarge",
+  "Location": "ap-northeast-3c"
+ },
+ {
+  "InstanceType": "m6g.8xlarge",
+  "Location": "ap-northeast-3c"
+ },
+ {
+  "InstanceType": "m6g.large",
+  "Location": "ap-northeast-3c"
+ },
+ {
+  "InstanceType": "m6g.medium",
+  "Location": "ap-northeast-3c"
+ },
+ {
+  "InstanceType": "m6g.metal",
+  "Location": "ap-northeast-3c"
+ },
+ {
+  "InstanceType": "m6g.xlarge",
+  "Location": "ap-northeast-3c"
+ },
  {
   "InstanceType": "m6gd.12xlarge",
   "Location": "ap-northeast-3c"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-south-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-south-1.json
index 37ac2336e..5d066c8df 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-south-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-south-1.json
@@ -671,6 +671,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "ap-south-1a"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "ap-south-1a"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "ap-south-1a"
@@ -1011,6 +1027,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-south-1a"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-south-1a"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-south-1a"
+ },
  {
   "InstanceType": "m7g.12xlarge",
   "Location": "ap-south-1a"
@@ -2563,6 +2619,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "ap-south-1b"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "ap-south-1b"
+ },
  {
   "InstanceType": "m4.10xlarge",
   "Location": "ap-south-1b"
@@ -2879,6 +2951,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-south-1b"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-south-1b"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-south-1b"
+ },
  {
   "InstanceType": "m7g.12xlarge",
   "Location": "ap-south-1b"
@@ -4679,6 +4791,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-south-1c"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-south-1c"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-south-1c"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-south-1c"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-south-1c"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-south-1c"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-south-1c"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-south-1c"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-south-1c"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-south-1c"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-south-1c"
+ },
  {
   "InstanceType": "m7g.12xlarge",
   "Location": "ap-south-1c"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-southeast-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-southeast-1.json
index 62da41c13..12e00d928 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-southeast-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-southeast-1.json
@@ -1291,6 +1291,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-southeast-1a"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-southeast-1a"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-southeast-1a"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-southeast-1a"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-southeast-1a"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-southeast-1a"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-southeast-1a"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-southeast-1a"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-southeast-1a"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-southeast-1a"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-southeast-1a"
+ },
  {
   "InstanceType": "m6idn.12xlarge",
   "Location": "ap-southeast-1a"
@@ -3611,6 +3651,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-southeast-1b"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-southeast-1b"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-southeast-1b"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-southeast-1b"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-southeast-1b"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-southeast-1b"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-southeast-1b"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-southeast-1b"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-southeast-1b"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-southeast-1b"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-southeast-1b"
+ },
  {
   "InstanceType": "m6idn.12xlarge",
   "Location": "ap-southeast-1b"
@@ -5347,6 +5427,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "ap-southeast-1c"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "ap-southeast-1c"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "ap-southeast-1c"
@@ -5759,6 +5855,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-southeast-1c"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-southeast-1c"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-southeast-1c"
+ },
  {
   "InstanceType": "m6idn.12xlarge",
   "Location": "ap-southeast-1c"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-southeast-2.json b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-southeast-2.json
index 34f7fbbf8..ab0b70e7d 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/ap-southeast-2.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/ap-southeast-2.json
@@ -2871,6 +2871,10 @@
   "InstanceType": "g5.xlarge",
   "Location": "ap-southeast-2b"
  },
+ {
+  "InstanceType": "hpc6a.48xlarge",
+  "Location": "ap-southeast-2b"
+ },
  {
   "InstanceType": "i2.2xlarge",
   "Location": "ap-southeast-2b"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/eu-central-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone/eu-central-1.json
index 022d71160..a86e8df7b 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/eu-central-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/eu-central-1.json
@@ -839,6 +839,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "eu-central-1a"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "eu-central-1a"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "eu-central-1a"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "eu-central-1a"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "eu-central-1a"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "eu-central-1a"
@@ -3103,6 +3119,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "eu-central-1b"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "eu-central-1b"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "eu-central-1b"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "eu-central-1b"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "eu-central-1b"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "eu-central-1b"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/eu-north-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone/eu-north-1.json
index 9bdb5fb1a..620bf5347 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/eu-north-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/eu-north-1.json
@@ -1943,6 +1943,22 @@
   "InstanceType": "hpc6id.32xlarge",
   "Location": "eu-north-1b"
  },
+ {
+  "InstanceType": "hpc7a.12xlarge",
+  "Location": "eu-north-1b"
+ },
+ {
+  "InstanceType": "hpc7a.24xlarge",
+  "Location": "eu-north-1b"
+ },
+ {
+  "InstanceType": "hpc7a.48xlarge",
+  "Location": "eu-north-1b"
+ },
+ {
+  "InstanceType": "hpc7a.96xlarge",
+  "Location": "eu-north-1b"
+ },
  {
   "InstanceType": "i3.16xlarge",
   "Location": "eu-north-1b"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-1.json
index d45cdf3e1..1e19ed9bf 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-1.json
@@ -1067,6 +1067,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "eu-west-1a"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "eu-west-1a"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "eu-west-1a"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "eu-west-1a"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "eu-west-1a"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "eu-west-1a"
@@ -3971,6 +3987,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "eu-west-1b"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "eu-west-1b"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "eu-west-1b"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "eu-west-1b"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "eu-west-1b"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "eu-west-1b"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-3.json b/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-3.json
index 0ee25a3d3..b3a9a8f42 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-3.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/eu-west-3.json
@@ -759,6 +759,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "eu-west-3a"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "eu-west-3a"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "eu-west-3a"
+ },
  {
   "InstanceType": "m7i-flex.2xlarge",
   "Location": "eu-west-3a"
@@ -3335,6 +3371,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "eu-west-3c"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "eu-west-3c"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "eu-west-3c"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "eu-west-3c"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "eu-west-3c"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "eu-west-3c"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "eu-west-3c"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "eu-west-3c"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "eu-west-3c"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "eu-west-3c"
+ },
  {
   "InstanceType": "m7i-flex.2xlarge",
   "Location": "eu-west-3c"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/me-south-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone/me-south-1.json
index b947fe005..3efabdc66 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/me-south-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/me-south-1.json
@@ -563,6 +563,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "me-south-1a"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "me-south-1a"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "me-south-1a"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "me-south-1a"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "me-south-1a"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "me-south-1a"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "me-south-1a"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "me-south-1a"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "me-south-1a"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "me-south-1a"
+ },
  {
   "InstanceType": "r5.12xlarge",
   "Location": "me-south-1a"
@@ -1375,6 +1411,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "me-south-1b"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "me-south-1b"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "me-south-1b"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "me-south-1b"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "me-south-1b"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "me-south-1b"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "me-south-1b"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "me-south-1b"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "me-south-1b"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "me-south-1b"
+ },
  {
   "InstanceType": "r5.12xlarge",
   "Location": "me-south-1b"
@@ -2187,6 +2259,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "me-south-1c"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "me-south-1c"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "me-south-1c"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "me-south-1c"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "me-south-1c"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "me-south-1c"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "me-south-1c"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "me-south-1c"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "me-south-1c"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "me-south-1c"
+ },
  {
   "InstanceType": "r5.12xlarge",
   "Location": "me-south-1c"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/sa-east-1.json b/moto/ec2/resources/instance_type_offerings/availability-zone/sa-east-1.json
index 739ff7ffd..430ac04fd 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/sa-east-1.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/sa-east-1.json
@@ -1003,6 +1003,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "sa-east-1a"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "sa-east-1a"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "sa-east-1a"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "sa-east-1a"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "sa-east-1a"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "sa-east-1a"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "sa-east-1a"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "sa-east-1a"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "sa-east-1a"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "sa-east-1a"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "sa-east-1a"
@@ -2439,6 +2475,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "sa-east-1b"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "sa-east-1b"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "sa-east-1b"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "sa-east-1b"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "sa-east-1b"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "sa-east-1b"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "sa-east-1b"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "sa-east-1b"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "sa-east-1b"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "sa-east-1b"
+ },
  {
   "InstanceType": "r5.12xlarge",
   "Location": "sa-east-1b"
@@ -3719,6 +3791,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "sa-east-1c"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "sa-east-1c"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "sa-east-1c"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "sa-east-1c"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "sa-east-1c"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "sa-east-1c"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "sa-east-1c"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "sa-east-1c"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "sa-east-1c"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "sa-east-1c"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "sa-east-1c"
diff --git a/moto/ec2/resources/instance_type_offerings/availability-zone/us-west-2.json b/moto/ec2/resources/instance_type_offerings/availability-zone/us-west-2.json
index 6786f4e0b..bed140f06 100644
--- a/moto/ec2/resources/instance_type_offerings/availability-zone/us-west-2.json
+++ b/moto/ec2/resources/instance_type_offerings/availability-zone/us-west-2.json
@@ -9931,6 +9931,42 @@
   "InstanceType": "m6id.xlarge",
   "Location": "us-west-2d"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "us-west-2d"
+ },
  {
   "InstanceType": "m7gd.12xlarge",
   "Location": "us-west-2d"
@@ -10447,6 +10483,42 @@
   "InstanceType": "r7a.xlarge",
   "Location": "us-west-2d"
  },
+ {
+  "InstanceType": "r7g.12xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "r7g.16xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "r7g.2xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "r7g.4xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "r7g.8xlarge",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "r7g.large",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "r7g.medium",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "r7g.metal",
+  "Location": "us-west-2d"
+ },
+ {
+  "InstanceType": "r7g.xlarge",
+  "Location": "us-west-2d"
+ },
  {
   "InstanceType": "r7gd.12xlarge",
   "Location": "us-west-2d"
diff --git a/moto/ec2/resources/instance_type_offerings/region/ap-northeast-1.json b/moto/ec2/resources/instance_type_offerings/region/ap-northeast-1.json
index cf7aa60fd..0221eea86 100644
--- a/moto/ec2/resources/instance_type_offerings/region/ap-northeast-1.json
+++ b/moto/ec2/resources/instance_type_offerings/region/ap-northeast-1.json
@@ -915,6 +915,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "ap-northeast-1"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "ap-northeast-1"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "ap-northeast-1"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "ap-northeast-1"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "ap-northeast-1"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "ap-northeast-1"
diff --git a/moto/ec2/resources/instance_type_offerings/region/ap-northeast-2.json b/moto/ec2/resources/instance_type_offerings/region/ap-northeast-2.json
index bc91bbe28..9970cbf2b 100644
--- a/moto/ec2/resources/instance_type_offerings/region/ap-northeast-2.json
+++ b/moto/ec2/resources/instance_type_offerings/region/ap-northeast-2.json
@@ -919,6 +919,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-northeast-2"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-northeast-2"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-northeast-2"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-northeast-2"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-northeast-2"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-northeast-2"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-northeast-2"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-northeast-2"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-northeast-2"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-northeast-2"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-northeast-2"
+ },
  {
   "InstanceType": "m7g.12xlarge",
   "Location": "ap-northeast-2"
diff --git a/moto/ec2/resources/instance_type_offerings/region/ap-south-1.json b/moto/ec2/resources/instance_type_offerings/region/ap-south-1.json
index 376c02eeb..1911cc89d 100644
--- a/moto/ec2/resources/instance_type_offerings/region/ap-south-1.json
+++ b/moto/ec2/resources/instance_type_offerings/region/ap-south-1.json
@@ -695,6 +695,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "ap-south-1"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "ap-south-1"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "ap-south-1"
@@ -1035,6 +1051,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-south-1"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-south-1"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-south-1"
+ },
  {
   "InstanceType": "m7g.12xlarge",
   "Location": "ap-south-1"
diff --git a/moto/ec2/resources/instance_type_offerings/region/ap-southeast-1.json b/moto/ec2/resources/instance_type_offerings/region/ap-southeast-1.json
index 516b6625e..19c867075 100644
--- a/moto/ec2/resources/instance_type_offerings/region/ap-southeast-1.json
+++ b/moto/ec2/resources/instance_type_offerings/region/ap-southeast-1.json
@@ -811,6 +811,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "ap-southeast-1"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "ap-southeast-1"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "ap-southeast-1"
@@ -1295,6 +1311,46 @@
   "InstanceType": "m6i.xlarge",
   "Location": "ap-southeast-1"
  },
+ {
+  "InstanceType": "m6id.12xlarge",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "m6id.16xlarge",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "m6id.24xlarge",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "m6id.2xlarge",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "m6id.32xlarge",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "m6id.4xlarge",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "m6id.8xlarge",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "m6id.large",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "m6id.metal",
+  "Location": "ap-southeast-1"
+ },
+ {
+  "InstanceType": "m6id.xlarge",
+  "Location": "ap-southeast-1"
+ },
  {
   "InstanceType": "m6idn.12xlarge",
   "Location": "ap-southeast-1"
diff --git a/moto/ec2/resources/instance_type_offerings/region/ap-southeast-2.json b/moto/ec2/resources/instance_type_offerings/region/ap-southeast-2.json
index ff27350e5..f678dcdbb 100644
--- a/moto/ec2/resources/instance_type_offerings/region/ap-southeast-2.json
+++ b/moto/ec2/resources/instance_type_offerings/region/ap-southeast-2.json
@@ -691,6 +691,10 @@
   "InstanceType": "g5.xlarge",
   "Location": "ap-southeast-2"
  },
+ {
+  "InstanceType": "hpc6a.48xlarge",
+  "Location": "ap-southeast-2"
+ },
  {
   "InstanceType": "i2.2xlarge",
   "Location": "ap-southeast-2"
diff --git a/moto/ec2/resources/instance_type_offerings/region/eu-central-1.json b/moto/ec2/resources/instance_type_offerings/region/eu-central-1.json
index c69400608..f880a7b8c 100644
--- a/moto/ec2/resources/instance_type_offerings/region/eu-central-1.json
+++ b/moto/ec2/resources/instance_type_offerings/region/eu-central-1.json
@@ -907,6 +907,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "eu-central-1"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "eu-central-1"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "eu-central-1"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "eu-central-1"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "eu-central-1"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "eu-central-1"
diff --git a/moto/ec2/resources/instance_type_offerings/region/eu-north-1.json b/moto/ec2/resources/instance_type_offerings/region/eu-north-1.json
index 3eba92127..ffe56efe6 100644
--- a/moto/ec2/resources/instance_type_offerings/region/eu-north-1.json
+++ b/moto/ec2/resources/instance_type_offerings/region/eu-north-1.json
@@ -511,6 +511,22 @@
   "InstanceType": "hpc6id.32xlarge",
   "Location": "eu-north-1"
  },
+ {
+  "InstanceType": "hpc7a.12xlarge",
+  "Location": "eu-north-1"
+ },
+ {
+  "InstanceType": "hpc7a.24xlarge",
+  "Location": "eu-north-1"
+ },
+ {
+  "InstanceType": "hpc7a.48xlarge",
+  "Location": "eu-north-1"
+ },
+ {
+  "InstanceType": "hpc7a.96xlarge",
+  "Location": "eu-north-1"
+ },
  {
   "InstanceType": "i3.16xlarge",
   "Location": "eu-north-1"
diff --git a/moto/ec2/resources/instance_type_offerings/region/eu-west-1.json b/moto/ec2/resources/instance_type_offerings/region/eu-west-1.json
index 7e3141f6b..854a410e1 100644
--- a/moto/ec2/resources/instance_type_offerings/region/eu-west-1.json
+++ b/moto/ec2/resources/instance_type_offerings/region/eu-west-1.json
@@ -1083,6 +1083,22 @@
   "InstanceType": "inf1.xlarge",
   "Location": "eu-west-1"
  },
+ {
+  "InstanceType": "inf2.24xlarge",
+  "Location": "eu-west-1"
+ },
+ {
+  "InstanceType": "inf2.48xlarge",
+  "Location": "eu-west-1"
+ },
+ {
+  "InstanceType": "inf2.8xlarge",
+  "Location": "eu-west-1"
+ },
+ {
+  "InstanceType": "inf2.xlarge",
+  "Location": "eu-west-1"
+ },
  {
   "InstanceType": "is4gen.2xlarge",
   "Location": "eu-west-1"
diff --git a/moto/ec2/resources/instance_type_offerings/region/eu-west-3.json b/moto/ec2/resources/instance_type_offerings/region/eu-west-3.json
index f9d9a54fb..6d94c29b4 100644
--- a/moto/ec2/resources/instance_type_offerings/region/eu-west-3.json
+++ b/moto/ec2/resources/instance_type_offerings/region/eu-west-3.json
@@ -759,6 +759,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "eu-west-3"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "eu-west-3"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "eu-west-3"
+ },
  {
   "InstanceType": "m7i-flex.2xlarge",
   "Location": "eu-west-3"
diff --git a/moto/ec2/resources/instance_type_offerings/region/me-south-1.json b/moto/ec2/resources/instance_type_offerings/region/me-south-1.json
index 38af8ac7a..85b55ca6e 100644
--- a/moto/ec2/resources/instance_type_offerings/region/me-south-1.json
+++ b/moto/ec2/resources/instance_type_offerings/region/me-south-1.json
@@ -607,6 +607,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "me-south-1"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "me-south-1"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "me-south-1"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "me-south-1"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "me-south-1"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "me-south-1"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "me-south-1"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "me-south-1"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "me-south-1"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "me-south-1"
+ },
  {
   "InstanceType": "r5.12xlarge",
   "Location": "me-south-1"
diff --git a/moto/ec2/resources/instance_type_offerings/region/sa-east-1.json b/moto/ec2/resources/instance_type_offerings/region/sa-east-1.json
index 7165cad0f..0a4524b79 100644
--- a/moto/ec2/resources/instance_type_offerings/region/sa-east-1.json
+++ b/moto/ec2/resources/instance_type_offerings/region/sa-east-1.json
@@ -1003,6 +1003,42 @@
   "InstanceType": "m6i.xlarge",
   "Location": "sa-east-1"
  },
+ {
+  "InstanceType": "m7g.12xlarge",
+  "Location": "sa-east-1"
+ },
+ {
+  "InstanceType": "m7g.16xlarge",
+  "Location": "sa-east-1"
+ },
+ {
+  "InstanceType": "m7g.2xlarge",
+  "Location": "sa-east-1"
+ },
+ {
+  "InstanceType": "m7g.4xlarge",
+  "Location": "sa-east-1"
+ },
+ {
+  "InstanceType": "m7g.8xlarge",
+  "Location": "sa-east-1"
+ },
+ {
+  "InstanceType": "m7g.large",
+  "Location": "sa-east-1"
+ },
+ {
+  "InstanceType": "m7g.medium",
+  "Location": "sa-east-1"
+ },
+ {
+  "InstanceType": "m7g.metal",
+  "Location": "sa-east-1"
+ },
+ {
+  "InstanceType": "m7g.xlarge",
+  "Location": "sa-east-1"
+ },
  {
   "InstanceType": "r3.2xlarge",
   "Location": "sa-east-1"
diff --git a/moto/ssm/resources/regions.json b/moto/ssm/resources/regions.json
index f0fa4d747..20aa09fb0 100644
--- a/moto/ssm/resources/regions.json
+++ b/moto/ssm/resources/regions.json
@@ -373,6 +373,24 @@
                   "Value": "HTTPS"
                 }
               },
+              "cognito-identity": {
+                "Value": "cognito-identity",
+                "endpoint": {
+                  "Value": "cognito-identity.af-south-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
+              "cognito-idp": {
+                "Value": "cognito-idp",
+                "endpoint": {
+                  "Value": "cognito-idp.af-south-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "compute-optimizer": {
                 "Value": "compute-optimizer",
                 "endpoint": {
@@ -12223,6 +12241,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "cloudhsmv2": {
+                "Value": "cloudhsmv2",
+                "endpoint": {
+                  "Value": "cloudhsmv2.ap-south-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "cloudtrail": {
                 "Value": "cloudtrail",
                 "endpoint": {
@@ -18743,6 +18770,24 @@
                   "Value": "HTTPS"
                 }
               },
+              "cognito-identity": {
+                "Value": "cognito-identity",
+                "endpoint": {
+                  "Value": "cognito-identity.ap-southeast-3.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
+              "cognito-idp": {
+                "Value": "cognito-idp",
+                "endpoint": {
+                  "Value": "cognito-idp.ap-southeast-3.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "compute-optimizer": {
                 "Value": "compute-optimizer",
                 "endpoint": {
@@ -24184,6 +24229,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "pipes": {
+                "Value": "pipes",
+                "endpoint": {
+                  "Value": "pipes.cn-north-1.amazonaws.com.cn"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "privatelink": {
                 "Value": "privatelink"
               },
@@ -25514,6 +25568,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "pipes": {
+                "Value": "pipes",
+                "endpoint": {
+                  "Value": "pipes.cn-northwest-1.amazonaws.com.cn"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "polly": {
                 "Value": "polly",
                 "endpoint": {
@@ -42017,6 +42080,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "dlm": {
+                "Value": "dlm",
+                "endpoint": {
+                  "Value": "dlm.il-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "dms": {
                 "Value": "dms",
                 "endpoint": {
@@ -42425,6 +42497,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "mq": {
+                "Value": "mq",
+                "endpoint": {
+                  "Value": "mq.il-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "neptune": {
                 "Value": "neptune",
                 "endpoint": {
@@ -43353,6 +43434,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "emr-serverless": {
+                "Value": "emr-serverless",
+                "endpoint": {
+                  "Value": "emr-serverless.me-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "es": {
                 "Value": "es",
                 "endpoint": {
@@ -43473,6 +43563,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "identitystore": {
+                "Value": "identitystore",
+                "endpoint": {
+                  "Value": "identitystore.me-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "imagebuilder": {
                 "Value": "imagebuilder",
                 "endpoint": {
diff --git a/moto/ssm/resources/services.json b/moto/ssm/resources/services.json
index e53e3f0ef..f73b5662a 100644
--- a/moto/ssm/resources/services.json
+++ b/moto/ssm/resources/services.json
@@ -9969,6 +9969,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ap-south-2": {
+                "Value": "ap-south-2",
+                "endpoint": {
+                  "Value": "cloudhsmv2.ap-south-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ap-southeast-1": {
                 "Value": "ap-southeast-1",
                 "endpoint": {
@@ -13100,6 +13109,15 @@
               "Value": "https://aws.amazon.com/cognito/"
             },
             "regions": {
+              "af-south-1": {
+                "Value": "af-south-1",
+                "endpoint": {
+                  "Value": "cognito-identity.af-south-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ap-northeast-1": {
                 "Value": "ap-northeast-1",
                 "endpoint": {
@@ -13154,6 +13172,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ap-southeast-3": {
+                "Value": "ap-southeast-3",
+                "endpoint": {
+                  "Value": "cognito-identity.ap-southeast-3.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ca-central-1": {
                 "Value": "ca-central-1",
                 "endpoint": {
@@ -13306,6 +13333,15 @@
               "Value": "Amazon Cognito Identity User Pools"
             },
             "regions": {
+              "af-south-1": {
+                "Value": "af-south-1",
+                "endpoint": {
+                  "Value": "cognito-idp.af-south-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ap-northeast-1": {
                 "Value": "ap-northeast-1",
                 "endpoint": {
@@ -13360,6 +13396,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ap-southeast-3": {
+                "Value": "ap-southeast-3",
+                "endpoint": {
+                  "Value": "cognito-idp.ap-southeast-3.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ca-central-1": {
                 "Value": "ca-central-1",
                 "endpoint": {
@@ -17269,6 +17314,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "il-central-1": {
+                "Value": "il-central-1",
+                "endpoint": {
+                  "Value": "dlm.il-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "me-central-1": {
                 "Value": "me-central-1",
                 "endpoint": {
@@ -22731,6 +22785,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "me-central-1": {
+                "Value": "me-central-1",
+                "endpoint": {
+                  "Value": "emr-serverless.me-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "me-south-1": {
                 "Value": "me-south-1",
                 "endpoint": {
@@ -29294,6 +29357,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "me-central-1": {
+                "Value": "me-central-1",
+                "endpoint": {
+                  "Value": "identitystore.me-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "me-south-1": {
                 "Value": "me-south-1",
                 "endpoint": {
@@ -41126,6 +41198,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "il-central-1": {
+                "Value": "il-central-1",
+                "endpoint": {
+                  "Value": "mq.il-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "me-central-1": {
                 "Value": "me-central-1",
                 "endpoint": {
@@ -44908,6 +44989,24 @@
                   "Value": "HTTPS"
                 }
               },
+              "cn-north-1": {
+                "Value": "cn-north-1",
+                "endpoint": {
+                  "Value": "pipes.cn-north-1.amazonaws.com.cn"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
+              "cn-northwest-1": {
+                "Value": "cn-northwest-1",
+                "endpoint": {
+                  "Value": "pipes.cn-northwest-1.amazonaws.com.cn"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "eu-central-1": {
                 "Value": "eu-central-1",
                 "endpoint": {
diff --git a/setup.cfg b/setup.cfg
index 774641da3..546553103 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -56,7 +56,7 @@ all =
     openapi-spec-validator>=0.5.0
     pyparsing>=3.0.7
     jsondiff>=1.1.2
-    py-partiql-parser==0.4.2
+    py-partiql-parser==0.5.0
     aws-xray-sdk!=0.96,>=0.93
     setuptools
     multipart
@@ -71,7 +71,7 @@ proxy =
     openapi-spec-validator>=0.5.0
     pyparsing>=3.0.7
     jsondiff>=1.1.2
-    py-partiql-parser==0.4.2
+    py-partiql-parser==0.5.0
     aws-xray-sdk!=0.96,>=0.93
     setuptools
     multipart
@@ -86,7 +86,7 @@ server =
     openapi-spec-validator>=0.5.0
     pyparsing>=3.0.7
     jsondiff>=1.1.2
-    py-partiql-parser==0.4.2
+    py-partiql-parser==0.5.0
     aws-xray-sdk!=0.96,>=0.93
     setuptools
     flask!=2.2.0,!=2.2.1
@@ -121,7 +121,7 @@ cloudformation =
     openapi-spec-validator>=0.5.0
     pyparsing>=3.0.7
     jsondiff>=1.1.2
-    py-partiql-parser==0.4.2
+    py-partiql-parser==0.5.0
     aws-xray-sdk!=0.96,>=0.93
     setuptools
 cloudfront =
@@ -144,10 +144,10 @@ dms =
 ds = sshpubkeys>=3.1.0
 dynamodb =
     docker>=3.0.0
-    py-partiql-parser==0.4.2
+    py-partiql-parser==0.5.0
 dynamodbstreams =
     docker>=3.0.0
-    py-partiql-parser==0.4.2
+    py-partiql-parser==0.5.0
 ebs = sshpubkeys>=3.1.0
 ec2 = sshpubkeys>=3.1.0
 ec2instanceconnect =
@@ -210,15 +210,15 @@ resourcegroupstaggingapi =
     openapi-spec-validator>=0.5.0
     pyparsing>=3.0.7
     jsondiff>=1.1.2
-    py-partiql-parser==0.4.2
+    py-partiql-parser==0.5.0
 route53 =
 route53resolver = sshpubkeys>=3.1.0
 s3 =
     PyYAML>=5.1
-    py-partiql-parser==0.4.2
+    py-partiql-parser==0.5.0
 s3crc32c =
     PyYAML>=5.1
-    py-partiql-parser==0.4.2
+    py-partiql-parser==0.5.0
     crc32c
 s3control =
 sagemaker =


Test patch:
diff --git a/tests/test_cognitoidp/test_cognitoidp.py b/tests/test_cognitoidp/test_cognitoidp.py
index 23c5aa1f1..d7abd1beb 100644
--- a/tests/test_cognitoidp/test_cognitoidp.py
+++ b/tests/test_cognitoidp/test_cognitoidp.py
@@ -4349,6 +4349,61 @@ def test_admin_setting_mfa_totp_and_sms():
     assert result["PreferredMfaSetting"] == ""
 
 
+@mock_cognitoidp
+def test_admin_initiate_auth_when_token_totp_enabled():
+    conn = boto3.client("cognito-idp", "us-west-2")
+
+    result = authentication_flow(conn, "ADMIN_NO_SRP_AUTH")
+    access_token = result["access_token"]
+    user_pool_id = result["user_pool_id"]
+    username = result["username"]
+    client_id = result["client_id"]
+    password = result["password"]
+    conn.associate_software_token(AccessToken=access_token)
+    conn.verify_software_token(AccessToken=access_token, UserCode="123456")
+
+    # Set MFA TOTP and SMS methods
+    conn.admin_set_user_mfa_preference(
+        Username=username,
+        UserPoolId=user_pool_id,
+        SoftwareTokenMfaSettings={"Enabled": True, "PreferredMfa": True},
+        SMSMfaSettings={"Enabled": True, "PreferredMfa": False},
+    )
+    result = conn.admin_get_user(UserPoolId=user_pool_id, Username=username)
+    assert len(result["UserMFASettingList"]) == 2
+    assert result["PreferredMfaSetting"] == "SOFTWARE_TOKEN_MFA"
+
+    # Initiate auth with TOTP
+    result = conn.admin_initiate_auth(
+        UserPoolId=user_pool_id,
+        ClientId=client_id,
+        AuthFlow="ADMIN_NO_SRP_AUTH",
+        AuthParameters={
+            "USERNAME": username,
+            "PASSWORD": password,
+        },
+    )
+
+    assert result["ChallengeName"] == "SOFTWARE_TOKEN_MFA"
+    assert result["Session"] != ""
+
+    # Respond to challenge with TOTP
+    result = conn.respond_to_auth_challenge(
+        ClientId=client_id,
+        ChallengeName="SOFTWARE_TOKEN_MFA",
+        Session=result["Session"],
+        ChallengeResponses={
+            "SOFTWARE_TOKEN_MFA_CODE": "123456",
+            "USERNAME": username,
+        },
+    )
+
+    assert result["AuthenticationResult"]["IdToken"] != ""
+    assert result["AuthenticationResult"]["AccessToken"] != ""
+    assert result["AuthenticationResult"]["RefreshToken"] != ""
+    assert result["AuthenticationResult"]["TokenType"] == "Bearer"
+
+
 @mock_cognitoidp
 def test_admin_setting_mfa_when_token_not_verified():
     conn = boto3.client("cognito-idp", "us-west-2")
diff --git a/tests/test_dynamodb/test_dynamodb_statements.py b/tests/test_dynamodb/test_dynamodb_statements.py
index 7cacb6a0a..68e3f21f6 100644
--- a/tests/test_dynamodb/test_dynamodb_statements.py
+++ b/tests/test_dynamodb/test_dynamodb_statements.py
@@ -260,3 +260,109 @@ def test_execute_statement_with_all_clauses(table_name=None):
     partiql_statement = f"SELECT pk FROM \"{table_name}\" WHERE (contains(\"NameLower\", 'code') OR contains(\"DescriptionLower\", 'code')) AND Category = 'free' AND Price >= 0 AND Price <= 1 AND FreeTier IS NOT MISSING AND attribute_type(\"FreeTier\", 'N')"
     items = dynamodb_client.execute_statement(Statement=partiql_statement)["Items"]
     assert items == [{"pk": {"S": "0"}}]
+
+
+@pytest.mark.aws_verified
+@dynamodb_aws_verified()
+def test_insert_data(table_name=None):
+    client = boto3.client("dynamodb", "us-east-1")
+    create_items(table_name)
+    resp = client.execute_statement(
+        Statement=f"INSERT INTO \"{table_name}\" value {{'pk': 'msg3'}}"
+    )
+    assert resp["Items"] == []
+
+    items = client.scan(TableName=table_name)["Items"]
+    assert len(items) == 3
+    assert {"pk": {"S": "msg3"}} in items
+
+    # More advanced insertion
+    client.execute_statement(
+        Statement=f"INSERT INTO \"{table_name}\" value {{'pk': 'msg4', 'attr':{{'sth': ['other']}}}}"
+    )
+
+    items = client.scan(TableName=table_name)["Items"]
+    assert len(items) == 4
+    assert {
+        "pk": {"S": "msg4"},
+        "attr": {"M": {"sth": {"L": [{"S": "other"}]}}},
+    } in items
+
+
+@pytest.mark.aws_verified
+@dynamodb_aws_verified()
+def test_update_data(table_name=None):
+    client = boto3.client("dynamodb", "us-east-1")
+    create_items(table_name)
+
+    items = client.scan(TableName=table_name)["Items"]
+    assert item1 in items
+    assert item2 in items  # unchanged
+
+    # Update existing attr
+    client.execute_statement(
+        Statement=f"UPDATE \"{table_name}\" SET body='other' WHERE pk='msg1'"
+    )
+
+    items = client.scan(TableName=table_name)["Items"]
+    assert len(items) == 2
+    updated_item = item1.copy()
+    updated_item["body"] = {"S": "other"}
+    assert updated_item in items
+    assert item2 in items  # unchanged
+
+    # Set new attr
+    client.execute_statement(
+        Statement=f"UPDATE \"{table_name}\" SET new_attr='asdf' WHERE pk='msg1'"
+    )
+
+    items = client.scan(TableName=table_name)["Items"]
+    assert len(items) == 2
+    updated_item["new_attr"] = {"S": "asdf"}
+    assert updated_item in items
+    assert item2 in items
+
+    # Remove attr
+    client.execute_statement(
+        Statement=f"UPDATE \"{table_name}\" REMOVE new_attr WHERE pk='msg1'"
+    )
+
+    items = client.scan(TableName=table_name)["Items"]
+    assert len(items) == 2
+    updated_item.pop("new_attr")
+    assert updated_item in items
+    assert item2 in items
+
+
+@pytest.mark.aws_verified
+@dynamodb_aws_verified()
+def test_delete_data(table_name=None):
+    client = boto3.client("dynamodb", "us-east-1")
+    create_items(table_name)
+
+    client.execute_statement(Statement=f"DELETE FROM \"{table_name}\" WHERE pk='msg1'")
+
+    items = client.scan(TableName=table_name)["Items"]
+    assert items == [item2]
+
+
+@mock_dynamodb
+def test_delete_data__with_sort_key():
+    client = boto3.client("dynamodb", "us-east-1")
+    client.create_table(
+        TableName="test",
+        AttributeDefinitions=[
+            {"AttributeName": "pk", "AttributeType": "S"},
+            {"AttributeName": "sk", "AttributeType": "S"},
+        ],
+        KeySchema=[
+            {"AttributeName": "pk", "KeyType": "HASH"},
+            {"AttributeName": "sk", "KeyType": "RANGE"},
+        ],
+        BillingMode="PAY_PER_REQUEST",
+    )
+    client.put_item(TableName="test", Item={"pk": {"S": "msg"}, "sk": {"S": "sth"}})
+
+    client.execute_statement(Statement="DELETE FROM \"test\" WHERE pk='msg'")
+
+    assert client.scan(TableName="test")["Items"] == []