diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 # Change Log
 
+## 0.56.0
+
+* Update resource specification document to version 16.2.0
+
 ## 0.55.0
 
 * Update resource specification document to version 15.3.0
diff --git a/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerInterBrokerCred.hs b/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerInterBrokerCred.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerInterBrokerCred.hs
@@ -0,0 +1,47 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-interbrokercred.html
+
+module Stratosphere.ResourceProperties.AmazonMQBrokerInterBrokerCred where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for AmazonMQBrokerInterBrokerCred. See
+-- 'amazonMQBrokerInterBrokerCred' for a more convenient constructor.
+data AmazonMQBrokerInterBrokerCred =
+  AmazonMQBrokerInterBrokerCred
+  { _amazonMQBrokerInterBrokerCredPassword :: Val Text
+  , _amazonMQBrokerInterBrokerCredUsername :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON AmazonMQBrokerInterBrokerCred where
+  toJSON AmazonMQBrokerInterBrokerCred{..} =
+    object $
+    catMaybes
+    [ (Just . ("Password",) . toJSON) _amazonMQBrokerInterBrokerCredPassword
+    , (Just . ("Username",) . toJSON) _amazonMQBrokerInterBrokerCredUsername
+    ]
+
+-- | Constructor for 'AmazonMQBrokerInterBrokerCred' containing required
+-- fields as arguments.
+amazonMQBrokerInterBrokerCred
+  :: Val Text -- ^ 'amqbibcPassword'
+  -> Val Text -- ^ 'amqbibcUsername'
+  -> AmazonMQBrokerInterBrokerCred
+amazonMQBrokerInterBrokerCred passwordarg usernamearg =
+  AmazonMQBrokerInterBrokerCred
+  { _amazonMQBrokerInterBrokerCredPassword = passwordarg
+  , _amazonMQBrokerInterBrokerCredUsername = usernamearg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-interbrokercred.html#cfn-amazonmq-broker-interbrokercred-password
+amqbibcPassword :: Lens' AmazonMQBrokerInterBrokerCred (Val Text)
+amqbibcPassword = lens _amazonMQBrokerInterBrokerCredPassword (\s a -> s { _amazonMQBrokerInterBrokerCredPassword = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-interbrokercred.html#cfn-amazonmq-broker-interbrokercred-username
+amqbibcUsername :: Lens' AmazonMQBrokerInterBrokerCred (Val Text)
+amqbibcUsername = lens _amazonMQBrokerInterBrokerCredUsername (\s a -> s { _amazonMQBrokerInterBrokerCredUsername = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerLdapMetadata.hs b/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerLdapMetadata.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerLdapMetadata.hs
@@ -0,0 +1,47 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapmetadata.html
+
+module Stratosphere.ResourceProperties.AmazonMQBrokerLdapMetadata where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.AmazonMQBrokerInterBrokerCred
+import Stratosphere.ResourceProperties.AmazonMQBrokerServerMetadata
+
+-- | Full data type definition for AmazonMQBrokerLdapMetadata. See
+-- 'amazonMQBrokerLdapMetadata' for a more convenient constructor.
+data AmazonMQBrokerLdapMetadata =
+  AmazonMQBrokerLdapMetadata
+  { _amazonMQBrokerLdapMetadataInterBrokerCreds :: Maybe [AmazonMQBrokerInterBrokerCred]
+  , _amazonMQBrokerLdapMetadataServerMetadata :: AmazonMQBrokerServerMetadata
+  } deriving (Show, Eq)
+
+instance ToJSON AmazonMQBrokerLdapMetadata where
+  toJSON AmazonMQBrokerLdapMetadata{..} =
+    object $
+    catMaybes
+    [ fmap (("InterBrokerCreds",) . toJSON) _amazonMQBrokerLdapMetadataInterBrokerCreds
+    , (Just . ("ServerMetadata",) . toJSON) _amazonMQBrokerLdapMetadataServerMetadata
+    ]
+
+-- | Constructor for 'AmazonMQBrokerLdapMetadata' containing required fields
+-- as arguments.
+amazonMQBrokerLdapMetadata
+  :: AmazonMQBrokerServerMetadata -- ^ 'amqblmServerMetadata'
+  -> AmazonMQBrokerLdapMetadata
+amazonMQBrokerLdapMetadata serverMetadataarg =
+  AmazonMQBrokerLdapMetadata
+  { _amazonMQBrokerLdapMetadataInterBrokerCreds = Nothing
+  , _amazonMQBrokerLdapMetadataServerMetadata = serverMetadataarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapmetadata.html#cfn-amazonmq-broker-ldapmetadata-interbrokercreds
+amqblmInterBrokerCreds :: Lens' AmazonMQBrokerLdapMetadata (Maybe [AmazonMQBrokerInterBrokerCred])
+amqblmInterBrokerCreds = lens _amazonMQBrokerLdapMetadataInterBrokerCreds (\s a -> s { _amazonMQBrokerLdapMetadataInterBrokerCreds = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapmetadata.html#cfn-amazonmq-broker-ldapmetadata-servermetadata
+amqblmServerMetadata :: Lens' AmazonMQBrokerLdapMetadata AmazonMQBrokerServerMetadata
+amqblmServerMetadata = lens _amazonMQBrokerLdapMetadataServerMetadata (\s a -> s { _amazonMQBrokerLdapMetadataServerMetadata = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerLdapServerMetadata.hs b/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerLdapServerMetadata.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerLdapServerMetadata.hs
@@ -0,0 +1,115 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html
+
+module Stratosphere.ResourceProperties.AmazonMQBrokerLdapServerMetadata where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for AmazonMQBrokerLdapServerMetadata. See
+-- 'amazonMQBrokerLdapServerMetadata' for a more convenient constructor.
+data AmazonMQBrokerLdapServerMetadata =
+  AmazonMQBrokerLdapServerMetadata
+  { _amazonMQBrokerLdapServerMetadataHosts :: ValList Text
+  , _amazonMQBrokerLdapServerMetadataRoleBase :: Val Text
+  , _amazonMQBrokerLdapServerMetadataRoleName :: Maybe (Val Text)
+  , _amazonMQBrokerLdapServerMetadataRoleSearchMatching :: Val Text
+  , _amazonMQBrokerLdapServerMetadataRoleSearchSubtree :: Maybe (Val Bool)
+  , _amazonMQBrokerLdapServerMetadataServiceAccountPassword :: Val Text
+  , _amazonMQBrokerLdapServerMetadataServiceAccountUsername :: Val Text
+  , _amazonMQBrokerLdapServerMetadataUserBase :: Val Text
+  , _amazonMQBrokerLdapServerMetadataUserRoleName :: Maybe (Val Text)
+  , _amazonMQBrokerLdapServerMetadataUserSearchMatching :: Val Text
+  , _amazonMQBrokerLdapServerMetadataUserSearchSubtree :: Maybe (Val Bool)
+  } deriving (Show, Eq)
+
+instance ToJSON AmazonMQBrokerLdapServerMetadata where
+  toJSON AmazonMQBrokerLdapServerMetadata{..} =
+    object $
+    catMaybes
+    [ (Just . ("Hosts",) . toJSON) _amazonMQBrokerLdapServerMetadataHosts
+    , (Just . ("RoleBase",) . toJSON) _amazonMQBrokerLdapServerMetadataRoleBase
+    , fmap (("RoleName",) . toJSON) _amazonMQBrokerLdapServerMetadataRoleName
+    , (Just . ("RoleSearchMatching",) . toJSON) _amazonMQBrokerLdapServerMetadataRoleSearchMatching
+    , fmap (("RoleSearchSubtree",) . toJSON) _amazonMQBrokerLdapServerMetadataRoleSearchSubtree
+    , (Just . ("ServiceAccountPassword",) . toJSON) _amazonMQBrokerLdapServerMetadataServiceAccountPassword
+    , (Just . ("ServiceAccountUsername",) . toJSON) _amazonMQBrokerLdapServerMetadataServiceAccountUsername
+    , (Just . ("UserBase",) . toJSON) _amazonMQBrokerLdapServerMetadataUserBase
+    , fmap (("UserRoleName",) . toJSON) _amazonMQBrokerLdapServerMetadataUserRoleName
+    , (Just . ("UserSearchMatching",) . toJSON) _amazonMQBrokerLdapServerMetadataUserSearchMatching
+    , fmap (("UserSearchSubtree",) . toJSON) _amazonMQBrokerLdapServerMetadataUserSearchSubtree
+    ]
+
+-- | Constructor for 'AmazonMQBrokerLdapServerMetadata' containing required
+-- fields as arguments.
+amazonMQBrokerLdapServerMetadata
+  :: ValList Text -- ^ 'amqblsmHosts'
+  -> Val Text -- ^ 'amqblsmRoleBase'
+  -> Val Text -- ^ 'amqblsmRoleSearchMatching'
+  -> Val Text -- ^ 'amqblsmServiceAccountPassword'
+  -> Val Text -- ^ 'amqblsmServiceAccountUsername'
+  -> Val Text -- ^ 'amqblsmUserBase'
+  -> Val Text -- ^ 'amqblsmUserSearchMatching'
+  -> AmazonMQBrokerLdapServerMetadata
+amazonMQBrokerLdapServerMetadata hostsarg roleBasearg roleSearchMatchingarg serviceAccountPasswordarg serviceAccountUsernamearg userBasearg userSearchMatchingarg =
+  AmazonMQBrokerLdapServerMetadata
+  { _amazonMQBrokerLdapServerMetadataHosts = hostsarg
+  , _amazonMQBrokerLdapServerMetadataRoleBase = roleBasearg
+  , _amazonMQBrokerLdapServerMetadataRoleName = Nothing
+  , _amazonMQBrokerLdapServerMetadataRoleSearchMatching = roleSearchMatchingarg
+  , _amazonMQBrokerLdapServerMetadataRoleSearchSubtree = Nothing
+  , _amazonMQBrokerLdapServerMetadataServiceAccountPassword = serviceAccountPasswordarg
+  , _amazonMQBrokerLdapServerMetadataServiceAccountUsername = serviceAccountUsernamearg
+  , _amazonMQBrokerLdapServerMetadataUserBase = userBasearg
+  , _amazonMQBrokerLdapServerMetadataUserRoleName = Nothing
+  , _amazonMQBrokerLdapServerMetadataUserSearchMatching = userSearchMatchingarg
+  , _amazonMQBrokerLdapServerMetadataUserSearchSubtree = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-hosts
+amqblsmHosts :: Lens' AmazonMQBrokerLdapServerMetadata (ValList Text)
+amqblsmHosts = lens _amazonMQBrokerLdapServerMetadataHosts (\s a -> s { _amazonMQBrokerLdapServerMetadataHosts = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-rolebase
+amqblsmRoleBase :: Lens' AmazonMQBrokerLdapServerMetadata (Val Text)
+amqblsmRoleBase = lens _amazonMQBrokerLdapServerMetadataRoleBase (\s a -> s { _amazonMQBrokerLdapServerMetadataRoleBase = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-rolename
+amqblsmRoleName :: Lens' AmazonMQBrokerLdapServerMetadata (Maybe (Val Text))
+amqblsmRoleName = lens _amazonMQBrokerLdapServerMetadataRoleName (\s a -> s { _amazonMQBrokerLdapServerMetadataRoleName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-rolesearchmatching
+amqblsmRoleSearchMatching :: Lens' AmazonMQBrokerLdapServerMetadata (Val Text)
+amqblsmRoleSearchMatching = lens _amazonMQBrokerLdapServerMetadataRoleSearchMatching (\s a -> s { _amazonMQBrokerLdapServerMetadataRoleSearchMatching = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-rolesearchsubtree
+amqblsmRoleSearchSubtree :: Lens' AmazonMQBrokerLdapServerMetadata (Maybe (Val Bool))
+amqblsmRoleSearchSubtree = lens _amazonMQBrokerLdapServerMetadataRoleSearchSubtree (\s a -> s { _amazonMQBrokerLdapServerMetadataRoleSearchSubtree = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-serviceaccountpassword
+amqblsmServiceAccountPassword :: Lens' AmazonMQBrokerLdapServerMetadata (Val Text)
+amqblsmServiceAccountPassword = lens _amazonMQBrokerLdapServerMetadataServiceAccountPassword (\s a -> s { _amazonMQBrokerLdapServerMetadataServiceAccountPassword = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-serviceaccountusername
+amqblsmServiceAccountUsername :: Lens' AmazonMQBrokerLdapServerMetadata (Val Text)
+amqblsmServiceAccountUsername = lens _amazonMQBrokerLdapServerMetadataServiceAccountUsername (\s a -> s { _amazonMQBrokerLdapServerMetadataServiceAccountUsername = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-userbase
+amqblsmUserBase :: Lens' AmazonMQBrokerLdapServerMetadata (Val Text)
+amqblsmUserBase = lens _amazonMQBrokerLdapServerMetadataUserBase (\s a -> s { _amazonMQBrokerLdapServerMetadataUserBase = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-userrolename
+amqblsmUserRoleName :: Lens' AmazonMQBrokerLdapServerMetadata (Maybe (Val Text))
+amqblsmUserRoleName = lens _amazonMQBrokerLdapServerMetadataUserRoleName (\s a -> s { _amazonMQBrokerLdapServerMetadataUserRoleName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-usersearchmatching
+amqblsmUserSearchMatching :: Lens' AmazonMQBrokerLdapServerMetadata (Val Text)
+amqblsmUserSearchMatching = lens _amazonMQBrokerLdapServerMetadataUserSearchMatching (\s a -> s { _amazonMQBrokerLdapServerMetadataUserSearchMatching = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-ldapservermetadata.html#cfn-amazonmq-broker-ldapservermetadata-usersearchsubtree
+amqblsmUserSearchSubtree :: Lens' AmazonMQBrokerLdapServerMetadata (Maybe (Val Bool))
+amqblsmUserSearchSubtree = lens _amazonMQBrokerLdapServerMetadataUserSearchSubtree (\s a -> s { _amazonMQBrokerLdapServerMetadataUserSearchSubtree = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerServerMetadata.hs b/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerServerMetadata.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AmazonMQBrokerServerMetadata.hs
@@ -0,0 +1,115 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html
+
+module Stratosphere.ResourceProperties.AmazonMQBrokerServerMetadata where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for AmazonMQBrokerServerMetadata. See
+-- 'amazonMQBrokerServerMetadata' for a more convenient constructor.
+data AmazonMQBrokerServerMetadata =
+  AmazonMQBrokerServerMetadata
+  { _amazonMQBrokerServerMetadataHosts :: ValList Text
+  , _amazonMQBrokerServerMetadataRoleBase :: Val Text
+  , _amazonMQBrokerServerMetadataRoleName :: Maybe (Val Text)
+  , _amazonMQBrokerServerMetadataRoleSearchMatching :: Val Text
+  , _amazonMQBrokerServerMetadataRoleSearchSubtree :: Maybe (Val Bool)
+  , _amazonMQBrokerServerMetadataServiceAccountPassword :: Val Text
+  , _amazonMQBrokerServerMetadataServiceAccountUsername :: Val Text
+  , _amazonMQBrokerServerMetadataUserBase :: Val Text
+  , _amazonMQBrokerServerMetadataUserRoleName :: Maybe (Val Text)
+  , _amazonMQBrokerServerMetadataUserSearchMatching :: Val Text
+  , _amazonMQBrokerServerMetadataUserSearchSubtree :: Maybe (Val Bool)
+  } deriving (Show, Eq)
+
+instance ToJSON AmazonMQBrokerServerMetadata where
+  toJSON AmazonMQBrokerServerMetadata{..} =
+    object $
+    catMaybes
+    [ (Just . ("Hosts",) . toJSON) _amazonMQBrokerServerMetadataHosts
+    , (Just . ("RoleBase",) . toJSON) _amazonMQBrokerServerMetadataRoleBase
+    , fmap (("RoleName",) . toJSON) _amazonMQBrokerServerMetadataRoleName
+    , (Just . ("RoleSearchMatching",) . toJSON) _amazonMQBrokerServerMetadataRoleSearchMatching
+    , fmap (("RoleSearchSubtree",) . toJSON) _amazonMQBrokerServerMetadataRoleSearchSubtree
+    , (Just . ("ServiceAccountPassword",) . toJSON) _amazonMQBrokerServerMetadataServiceAccountPassword
+    , (Just . ("ServiceAccountUsername",) . toJSON) _amazonMQBrokerServerMetadataServiceAccountUsername
+    , (Just . ("UserBase",) . toJSON) _amazonMQBrokerServerMetadataUserBase
+    , fmap (("UserRoleName",) . toJSON) _amazonMQBrokerServerMetadataUserRoleName
+    , (Just . ("UserSearchMatching",) . toJSON) _amazonMQBrokerServerMetadataUserSearchMatching
+    , fmap (("UserSearchSubtree",) . toJSON) _amazonMQBrokerServerMetadataUserSearchSubtree
+    ]
+
+-- | Constructor for 'AmazonMQBrokerServerMetadata' containing required fields
+-- as arguments.
+amazonMQBrokerServerMetadata
+  :: ValList Text -- ^ 'amqbsmHosts'
+  -> Val Text -- ^ 'amqbsmRoleBase'
+  -> Val Text -- ^ 'amqbsmRoleSearchMatching'
+  -> Val Text -- ^ 'amqbsmServiceAccountPassword'
+  -> Val Text -- ^ 'amqbsmServiceAccountUsername'
+  -> Val Text -- ^ 'amqbsmUserBase'
+  -> Val Text -- ^ 'amqbsmUserSearchMatching'
+  -> AmazonMQBrokerServerMetadata
+amazonMQBrokerServerMetadata hostsarg roleBasearg roleSearchMatchingarg serviceAccountPasswordarg serviceAccountUsernamearg userBasearg userSearchMatchingarg =
+  AmazonMQBrokerServerMetadata
+  { _amazonMQBrokerServerMetadataHosts = hostsarg
+  , _amazonMQBrokerServerMetadataRoleBase = roleBasearg
+  , _amazonMQBrokerServerMetadataRoleName = Nothing
+  , _amazonMQBrokerServerMetadataRoleSearchMatching = roleSearchMatchingarg
+  , _amazonMQBrokerServerMetadataRoleSearchSubtree = Nothing
+  , _amazonMQBrokerServerMetadataServiceAccountPassword = serviceAccountPasswordarg
+  , _amazonMQBrokerServerMetadataServiceAccountUsername = serviceAccountUsernamearg
+  , _amazonMQBrokerServerMetadataUserBase = userBasearg
+  , _amazonMQBrokerServerMetadataUserRoleName = Nothing
+  , _amazonMQBrokerServerMetadataUserSearchMatching = userSearchMatchingarg
+  , _amazonMQBrokerServerMetadataUserSearchSubtree = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-hosts
+amqbsmHosts :: Lens' AmazonMQBrokerServerMetadata (ValList Text)
+amqbsmHosts = lens _amazonMQBrokerServerMetadataHosts (\s a -> s { _amazonMQBrokerServerMetadataHosts = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-rolebase
+amqbsmRoleBase :: Lens' AmazonMQBrokerServerMetadata (Val Text)
+amqbsmRoleBase = lens _amazonMQBrokerServerMetadataRoleBase (\s a -> s { _amazonMQBrokerServerMetadataRoleBase = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-rolename
+amqbsmRoleName :: Lens' AmazonMQBrokerServerMetadata (Maybe (Val Text))
+amqbsmRoleName = lens _amazonMQBrokerServerMetadataRoleName (\s a -> s { _amazonMQBrokerServerMetadataRoleName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-rolesearchmatching
+amqbsmRoleSearchMatching :: Lens' AmazonMQBrokerServerMetadata (Val Text)
+amqbsmRoleSearchMatching = lens _amazonMQBrokerServerMetadataRoleSearchMatching (\s a -> s { _amazonMQBrokerServerMetadataRoleSearchMatching = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-rolesearchsubtree
+amqbsmRoleSearchSubtree :: Lens' AmazonMQBrokerServerMetadata (Maybe (Val Bool))
+amqbsmRoleSearchSubtree = lens _amazonMQBrokerServerMetadataRoleSearchSubtree (\s a -> s { _amazonMQBrokerServerMetadataRoleSearchSubtree = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-serviceaccountpassword
+amqbsmServiceAccountPassword :: Lens' AmazonMQBrokerServerMetadata (Val Text)
+amqbsmServiceAccountPassword = lens _amazonMQBrokerServerMetadataServiceAccountPassword (\s a -> s { _amazonMQBrokerServerMetadataServiceAccountPassword = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-serviceaccountusername
+amqbsmServiceAccountUsername :: Lens' AmazonMQBrokerServerMetadata (Val Text)
+amqbsmServiceAccountUsername = lens _amazonMQBrokerServerMetadataServiceAccountUsername (\s a -> s { _amazonMQBrokerServerMetadataServiceAccountUsername = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-userbase
+amqbsmUserBase :: Lens' AmazonMQBrokerServerMetadata (Val Text)
+amqbsmUserBase = lens _amazonMQBrokerServerMetadataUserBase (\s a -> s { _amazonMQBrokerServerMetadataUserBase = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-userrolename
+amqbsmUserRoleName :: Lens' AmazonMQBrokerServerMetadata (Maybe (Val Text))
+amqbsmUserRoleName = lens _amazonMQBrokerServerMetadataUserRoleName (\s a -> s { _amazonMQBrokerServerMetadataUserRoleName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-usersearchmatching
+amqbsmUserSearchMatching :: Lens' AmazonMQBrokerServerMetadata (Val Text)
+amqbsmUserSearchMatching = lens _amazonMQBrokerServerMetadataUserSearchMatching (\s a -> s { _amazonMQBrokerServerMetadataUserSearchMatching = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amazonmq-broker-servermetadata.html#cfn-amazonmq-broker-servermetadata-usersearchsubtree
+amqbsmUserSearchSubtree :: Lens' AmazonMQBrokerServerMetadata (Maybe (Val Bool))
+amqbsmUserSearchSubtree = lens _amazonMQBrokerServerMetadataUserSearchSubtree (\s a -> s { _amazonMQBrokerServerMetadataUserSearchSubtree = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings.hs b/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings.hs
@@ -0,0 +1,47 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-accesslogsettings.html
+
+module Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings. See
+-- 'apiGatewayV2ApiGatewayManagedOverridesAccessLogSettings' for a more
+-- convenient constructor.
+data ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings =
+  ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings
+  { _apiGatewayV2ApiGatewayManagedOverridesAccessLogSettingsDestinationArn :: Maybe (Val Text)
+  , _apiGatewayV2ApiGatewayManagedOverridesAccessLogSettingsFormat :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings where
+  toJSON ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings{..} =
+    object $
+    catMaybes
+    [ fmap (("DestinationArn",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesAccessLogSettingsDestinationArn
+    , fmap (("Format",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesAccessLogSettingsFormat
+    ]
+
+-- | Constructor for 'ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings'
+-- containing required fields as arguments.
+apiGatewayV2ApiGatewayManagedOverridesAccessLogSettings
+  :: ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings
+apiGatewayV2ApiGatewayManagedOverridesAccessLogSettings  =
+  ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings
+  { _apiGatewayV2ApiGatewayManagedOverridesAccessLogSettingsDestinationArn = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesAccessLogSettingsFormat = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-accesslogsettings.html#cfn-apigatewayv2-apigatewaymanagedoverrides-accesslogsettings-destinationarn
+agvagmoalsDestinationArn :: Lens' ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings (Maybe (Val Text))
+agvagmoalsDestinationArn = lens _apiGatewayV2ApiGatewayManagedOverridesAccessLogSettingsDestinationArn (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesAccessLogSettingsDestinationArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-accesslogsettings.html#cfn-apigatewayv2-apigatewaymanagedoverrides-accesslogsettings-format
+agvagmoalsFormat :: Lens' ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings (Maybe (Val Text))
+agvagmoalsFormat = lens _apiGatewayV2ApiGatewayManagedOverridesAccessLogSettingsFormat (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesAccessLogSettingsFormat = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides.hs b/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides.hs
@@ -0,0 +1,62 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-integrationoverrides.html
+
+module Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides. See
+-- 'apiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides' for a more
+-- convenient constructor.
+data ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides =
+  ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides
+  { _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesDescription :: Maybe (Val Text)
+  , _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesIntegrationMethod :: Maybe (Val Text)
+  , _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesPayloadFormatVersion :: Maybe (Val Text)
+  , _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesTimeoutInMillis :: Maybe (Val Integer)
+  } deriving (Show, Eq)
+
+instance ToJSON ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides where
+  toJSON ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides{..} =
+    object $
+    catMaybes
+    [ fmap (("Description",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesDescription
+    , fmap (("IntegrationMethod",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesIntegrationMethod
+    , fmap (("PayloadFormatVersion",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesPayloadFormatVersion
+    , fmap (("TimeoutInMillis",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesTimeoutInMillis
+    ]
+
+-- | Constructor for
+-- 'ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides' containing
+-- required fields as arguments.
+apiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides
+  :: ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides
+apiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides  =
+  ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides
+  { _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesDescription = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesIntegrationMethod = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesPayloadFormatVersion = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesTimeoutInMillis = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-integrationoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-integrationoverrides-description
+agvagmoioDescription :: Lens' ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides (Maybe (Val Text))
+agvagmoioDescription = lens _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesDescription (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesDescription = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-integrationoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-integrationoverrides-integrationmethod
+agvagmoioIntegrationMethod :: Lens' ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides (Maybe (Val Text))
+agvagmoioIntegrationMethod = lens _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesIntegrationMethod (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesIntegrationMethod = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-integrationoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-integrationoverrides-payloadformatversion
+agvagmoioPayloadFormatVersion :: Lens' ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides (Maybe (Val Text))
+agvagmoioPayloadFormatVersion = lens _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesPayloadFormatVersion (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesPayloadFormatVersion = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-integrationoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-integrationoverrides-timeoutinmillis
+agvagmoioTimeoutInMillis :: Lens' ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides (Maybe (Val Integer))
+agvagmoioTimeoutInMillis = lens _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesTimeoutInMillis (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesIntegrationOverridesTimeoutInMillis = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides.hs b/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides.hs
@@ -0,0 +1,68 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routeoverrides.html
+
+module Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides. See
+-- 'apiGatewayV2ApiGatewayManagedOverridesRouteOverrides' for a more
+-- convenient constructor.
+data ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides =
+  ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides
+  { _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizationScopes :: Maybe (ValList Text)
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizationType :: Maybe (Val Text)
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizerId :: Maybe (Val Text)
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesOperationName :: Maybe (Val Text)
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesTarget :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides where
+  toJSON ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides{..} =
+    object $
+    catMaybes
+    [ fmap (("AuthorizationScopes",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizationScopes
+    , fmap (("AuthorizationType",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizationType
+    , fmap (("AuthorizerId",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizerId
+    , fmap (("OperationName",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesOperationName
+    , fmap (("Target",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesTarget
+    ]
+
+-- | Constructor for 'ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides'
+-- containing required fields as arguments.
+apiGatewayV2ApiGatewayManagedOverridesRouteOverrides
+  :: ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides
+apiGatewayV2ApiGatewayManagedOverridesRouteOverrides  =
+  ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides
+  { _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizationScopes = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizationType = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizerId = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesOperationName = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesTarget = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routeoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-routeoverrides-authorizationscopes
+agvagmoroAuthorizationScopes :: Lens' ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides (Maybe (ValList Text))
+agvagmoroAuthorizationScopes = lens _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizationScopes (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizationScopes = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routeoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-routeoverrides-authorizationtype
+agvagmoroAuthorizationType :: Lens' ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides (Maybe (Val Text))
+agvagmoroAuthorizationType = lens _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizationType (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizationType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routeoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-routeoverrides-authorizerid
+agvagmoroAuthorizerId :: Lens' ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides (Maybe (Val Text))
+agvagmoroAuthorizerId = lens _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizerId (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesAuthorizerId = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routeoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-routeoverrides-operationname
+agvagmoroOperationName :: Lens' ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides (Maybe (Val Text))
+agvagmoroOperationName = lens _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesOperationName (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesOperationName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routeoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-routeoverrides-target
+agvagmoroTarget :: Lens' ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides (Maybe (Val Text))
+agvagmoroTarget = lens _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesTarget (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRouteOverridesTarget = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesRouteSettings.hs b/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesRouteSettings.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesRouteSettings.hs
@@ -0,0 +1,68 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routesettings.html
+
+module Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesRouteSettings where
+
+import Stratosphere.ResourceImports
+import Stratosphere.Types
+
+-- | Full data type definition for
+-- ApiGatewayV2ApiGatewayManagedOverridesRouteSettings. See
+-- 'apiGatewayV2ApiGatewayManagedOverridesRouteSettings' for a more
+-- convenient constructor.
+data ApiGatewayV2ApiGatewayManagedOverridesRouteSettings =
+  ApiGatewayV2ApiGatewayManagedOverridesRouteSettings
+  { _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsDataTraceEnabled :: Maybe (Val Bool)
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsDetailedMetricsEnabled :: Maybe (Val Bool)
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsLoggingLevel :: Maybe (Val LoggingLevel)
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsThrottlingBurstLimit :: Maybe (Val Integer)
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsThrottlingRateLimit :: Maybe (Val Double)
+  } deriving (Show, Eq)
+
+instance ToJSON ApiGatewayV2ApiGatewayManagedOverridesRouteSettings where
+  toJSON ApiGatewayV2ApiGatewayManagedOverridesRouteSettings{..} =
+    object $
+    catMaybes
+    [ fmap (("DataTraceEnabled",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsDataTraceEnabled
+    , fmap (("DetailedMetricsEnabled",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsDetailedMetricsEnabled
+    , fmap (("LoggingLevel",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsLoggingLevel
+    , fmap (("ThrottlingBurstLimit",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsThrottlingBurstLimit
+    , fmap (("ThrottlingRateLimit",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsThrottlingRateLimit
+    ]
+
+-- | Constructor for 'ApiGatewayV2ApiGatewayManagedOverridesRouteSettings'
+-- containing required fields as arguments.
+apiGatewayV2ApiGatewayManagedOverridesRouteSettings
+  :: ApiGatewayV2ApiGatewayManagedOverridesRouteSettings
+apiGatewayV2ApiGatewayManagedOverridesRouteSettings  =
+  ApiGatewayV2ApiGatewayManagedOverridesRouteSettings
+  { _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsDataTraceEnabled = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsDetailedMetricsEnabled = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsLoggingLevel = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsThrottlingBurstLimit = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsThrottlingRateLimit = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routesettings.html#cfn-apigatewayv2-apigatewaymanagedoverrides-routesettings-datatraceenabled
+agvagmorsDataTraceEnabled :: Lens' ApiGatewayV2ApiGatewayManagedOverridesRouteSettings (Maybe (Val Bool))
+agvagmorsDataTraceEnabled = lens _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsDataTraceEnabled (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsDataTraceEnabled = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routesettings.html#cfn-apigatewayv2-apigatewaymanagedoverrides-routesettings-detailedmetricsenabled
+agvagmorsDetailedMetricsEnabled :: Lens' ApiGatewayV2ApiGatewayManagedOverridesRouteSettings (Maybe (Val Bool))
+agvagmorsDetailedMetricsEnabled = lens _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsDetailedMetricsEnabled (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsDetailedMetricsEnabled = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routesettings.html#cfn-apigatewayv2-apigatewaymanagedoverrides-routesettings-logginglevel
+agvagmorsLoggingLevel :: Lens' ApiGatewayV2ApiGatewayManagedOverridesRouteSettings (Maybe (Val LoggingLevel))
+agvagmorsLoggingLevel = lens _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsLoggingLevel (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsLoggingLevel = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routesettings.html#cfn-apigatewayv2-apigatewaymanagedoverrides-routesettings-throttlingburstlimit
+agvagmorsThrottlingBurstLimit :: Lens' ApiGatewayV2ApiGatewayManagedOverridesRouteSettings (Maybe (Val Integer))
+agvagmorsThrottlingBurstLimit = lens _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsThrottlingBurstLimit (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsThrottlingBurstLimit = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-routesettings.html#cfn-apigatewayv2-apigatewaymanagedoverrides-routesettings-throttlingratelimit
+agvagmorsThrottlingRateLimit :: Lens' ApiGatewayV2ApiGatewayManagedOverridesRouteSettings (Maybe (Val Double))
+agvagmorsThrottlingRateLimit = lens _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsThrottlingRateLimit (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRouteSettingsThrottlingRateLimit = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesStageOverrides.hs b/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesStageOverrides.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApiGatewayV2ApiGatewayManagedOverridesStageOverrides.hs
@@ -0,0 +1,76 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-stageoverrides.html
+
+module Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesStageOverrides where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings
+import Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesRouteSettings
+
+-- | Full data type definition for
+-- ApiGatewayV2ApiGatewayManagedOverridesStageOverrides. See
+-- 'apiGatewayV2ApiGatewayManagedOverridesStageOverrides' for a more
+-- convenient constructor.
+data ApiGatewayV2ApiGatewayManagedOverridesStageOverrides =
+  ApiGatewayV2ApiGatewayManagedOverridesStageOverrides
+  { _apiGatewayV2ApiGatewayManagedOverridesStageOverridesAccessLogSettings :: Maybe ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings
+  , _apiGatewayV2ApiGatewayManagedOverridesStageOverridesAutoDeploy :: Maybe (Val Bool)
+  , _apiGatewayV2ApiGatewayManagedOverridesStageOverridesDefaultRouteSettings :: Maybe ApiGatewayV2ApiGatewayManagedOverridesRouteSettings
+  , _apiGatewayV2ApiGatewayManagedOverridesStageOverridesDescription :: Maybe (Val Text)
+  , _apiGatewayV2ApiGatewayManagedOverridesStageOverridesRouteSettings :: Maybe Object
+  , _apiGatewayV2ApiGatewayManagedOverridesStageOverridesStageVariables :: Maybe Object
+  } deriving (Show, Eq)
+
+instance ToJSON ApiGatewayV2ApiGatewayManagedOverridesStageOverrides where
+  toJSON ApiGatewayV2ApiGatewayManagedOverridesStageOverrides{..} =
+    object $
+    catMaybes
+    [ fmap (("AccessLogSettings",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesStageOverridesAccessLogSettings
+    , fmap (("AutoDeploy",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesStageOverridesAutoDeploy
+    , fmap (("DefaultRouteSettings",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesStageOverridesDefaultRouteSettings
+    , fmap (("Description",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesStageOverridesDescription
+    , fmap (("RouteSettings",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesStageOverridesRouteSettings
+    , fmap (("StageVariables",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesStageOverridesStageVariables
+    ]
+
+-- | Constructor for 'ApiGatewayV2ApiGatewayManagedOverridesStageOverrides'
+-- containing required fields as arguments.
+apiGatewayV2ApiGatewayManagedOverridesStageOverrides
+  :: ApiGatewayV2ApiGatewayManagedOverridesStageOverrides
+apiGatewayV2ApiGatewayManagedOverridesStageOverrides  =
+  ApiGatewayV2ApiGatewayManagedOverridesStageOverrides
+  { _apiGatewayV2ApiGatewayManagedOverridesStageOverridesAccessLogSettings = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesStageOverridesAutoDeploy = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesStageOverridesDefaultRouteSettings = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesStageOverridesDescription = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesStageOverridesRouteSettings = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesStageOverridesStageVariables = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-stageoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-stageoverrides-accesslogsettings
+agvagmosoAccessLogSettings :: Lens' ApiGatewayV2ApiGatewayManagedOverridesStageOverrides (Maybe ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings)
+agvagmosoAccessLogSettings = lens _apiGatewayV2ApiGatewayManagedOverridesStageOverridesAccessLogSettings (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesStageOverridesAccessLogSettings = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-stageoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-stageoverrides-autodeploy
+agvagmosoAutoDeploy :: Lens' ApiGatewayV2ApiGatewayManagedOverridesStageOverrides (Maybe (Val Bool))
+agvagmosoAutoDeploy = lens _apiGatewayV2ApiGatewayManagedOverridesStageOverridesAutoDeploy (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesStageOverridesAutoDeploy = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-stageoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-stageoverrides-defaultroutesettings
+agvagmosoDefaultRouteSettings :: Lens' ApiGatewayV2ApiGatewayManagedOverridesStageOverrides (Maybe ApiGatewayV2ApiGatewayManagedOverridesRouteSettings)
+agvagmosoDefaultRouteSettings = lens _apiGatewayV2ApiGatewayManagedOverridesStageOverridesDefaultRouteSettings (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesStageOverridesDefaultRouteSettings = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-stageoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-stageoverrides-description
+agvagmosoDescription :: Lens' ApiGatewayV2ApiGatewayManagedOverridesStageOverrides (Maybe (Val Text))
+agvagmosoDescription = lens _apiGatewayV2ApiGatewayManagedOverridesStageOverridesDescription (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesStageOverridesDescription = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-stageoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-stageoverrides-routesettings
+agvagmosoRouteSettings :: Lens' ApiGatewayV2ApiGatewayManagedOverridesStageOverrides (Maybe Object)
+agvagmosoRouteSettings = lens _apiGatewayV2ApiGatewayManagedOverridesStageOverridesRouteSettings (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesStageOverridesRouteSettings = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigatewayv2-apigatewaymanagedoverrides-stageoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-stageoverrides-stagevariables
+agvagmosoStageVariables :: Lens' ApiGatewayV2ApiGatewayManagedOverridesStageOverrides (Maybe Object)
+agvagmosoStageVariables = lens _apiGatewayV2ApiGatewayManagedOverridesStageOverridesStageVariables (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesStageOverridesStageVariables = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshRouteGrpcRoute.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteGrpcRoute.hs
--- a/library-gen/Stratosphere/ResourceProperties/AppMeshRouteGrpcRoute.hs
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteGrpcRoute.hs
@@ -11,6 +11,7 @@
 import Stratosphere.ResourceProperties.AppMeshRouteGrpcRouteAction
 import Stratosphere.ResourceProperties.AppMeshRouteGrpcRouteMatch
 import Stratosphere.ResourceProperties.AppMeshRouteGrpcRetryPolicy
+import Stratosphere.ResourceProperties.AppMeshRouteGrpcTimeout
 
 -- | Full data type definition for AppMeshRouteGrpcRoute. See
 -- 'appMeshRouteGrpcRoute' for a more convenient constructor.
@@ -19,6 +20,7 @@
   { _appMeshRouteGrpcRouteAction :: AppMeshRouteGrpcRouteAction
   , _appMeshRouteGrpcRouteMatch :: AppMeshRouteGrpcRouteMatch
   , _appMeshRouteGrpcRouteRetryPolicy :: Maybe AppMeshRouteGrpcRetryPolicy
+  , _appMeshRouteGrpcRouteTimeout :: Maybe AppMeshRouteGrpcTimeout
   } deriving (Show, Eq)
 
 instance ToJSON AppMeshRouteGrpcRoute where
@@ -28,6 +30,7 @@
     [ (Just . ("Action",) . toJSON) _appMeshRouteGrpcRouteAction
     , (Just . ("Match",) . toJSON) _appMeshRouteGrpcRouteMatch
     , fmap (("RetryPolicy",) . toJSON) _appMeshRouteGrpcRouteRetryPolicy
+    , fmap (("Timeout",) . toJSON) _appMeshRouteGrpcRouteTimeout
     ]
 
 -- | Constructor for 'AppMeshRouteGrpcRoute' containing required fields as
@@ -41,6 +44,7 @@
   { _appMeshRouteGrpcRouteAction = actionarg
   , _appMeshRouteGrpcRouteMatch = matcharg
   , _appMeshRouteGrpcRouteRetryPolicy = Nothing
+  , _appMeshRouteGrpcRouteTimeout = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-action
@@ -54,3 +58,7 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-retrypolicy
 amrgrRetryPolicy :: Lens' AppMeshRouteGrpcRoute (Maybe AppMeshRouteGrpcRetryPolicy)
 amrgrRetryPolicy = lens _appMeshRouteGrpcRouteRetryPolicy (\s a -> s { _appMeshRouteGrpcRouteRetryPolicy = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpcroute.html#cfn-appmesh-route-grpcroute-timeout
+amrgrTimeout :: Lens' AppMeshRouteGrpcRoute (Maybe AppMeshRouteGrpcTimeout)
+amrgrTimeout = lens _appMeshRouteGrpcRouteTimeout (\s a -> s { _appMeshRouteGrpcRouteTimeout = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshRouteGrpcTimeout.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteGrpcTimeout.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteGrpcTimeout.hs
@@ -0,0 +1,45 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpctimeout.html
+
+module Stratosphere.ResourceProperties.AppMeshRouteGrpcTimeout where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.AppMeshRouteDuration
+
+-- | Full data type definition for AppMeshRouteGrpcTimeout. See
+-- 'appMeshRouteGrpcTimeout' for a more convenient constructor.
+data AppMeshRouteGrpcTimeout =
+  AppMeshRouteGrpcTimeout
+  { _appMeshRouteGrpcTimeoutIdle :: Maybe AppMeshRouteDuration
+  , _appMeshRouteGrpcTimeoutPerRequest :: Maybe AppMeshRouteDuration
+  } deriving (Show, Eq)
+
+instance ToJSON AppMeshRouteGrpcTimeout where
+  toJSON AppMeshRouteGrpcTimeout{..} =
+    object $
+    catMaybes
+    [ fmap (("Idle",) . toJSON) _appMeshRouteGrpcTimeoutIdle
+    , fmap (("PerRequest",) . toJSON) _appMeshRouteGrpcTimeoutPerRequest
+    ]
+
+-- | Constructor for 'AppMeshRouteGrpcTimeout' containing required fields as
+-- arguments.
+appMeshRouteGrpcTimeout
+  :: AppMeshRouteGrpcTimeout
+appMeshRouteGrpcTimeout  =
+  AppMeshRouteGrpcTimeout
+  { _appMeshRouteGrpcTimeoutIdle = Nothing
+  , _appMeshRouteGrpcTimeoutPerRequest = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpctimeout.html#cfn-appmesh-route-grpctimeout-idle
+amrgtIdle :: Lens' AppMeshRouteGrpcTimeout (Maybe AppMeshRouteDuration)
+amrgtIdle = lens _appMeshRouteGrpcTimeoutIdle (\s a -> s { _appMeshRouteGrpcTimeoutIdle = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-grpctimeout.html#cfn-appmesh-route-grpctimeout-perrequest
+amrgtPerRequest :: Lens' AppMeshRouteGrpcTimeout (Maybe AppMeshRouteDuration)
+amrgtPerRequest = lens _appMeshRouteGrpcTimeoutPerRequest (\s a -> s { _appMeshRouteGrpcTimeoutPerRequest = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshRouteHttpRoute.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteHttpRoute.hs
--- a/library-gen/Stratosphere/ResourceProperties/AppMeshRouteHttpRoute.hs
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteHttpRoute.hs
@@ -11,6 +11,7 @@
 import Stratosphere.ResourceProperties.AppMeshRouteHttpRouteAction
 import Stratosphere.ResourceProperties.AppMeshRouteHttpRouteMatch
 import Stratosphere.ResourceProperties.AppMeshRouteHttpRetryPolicy
+import Stratosphere.ResourceProperties.AppMeshRouteHttpTimeout
 
 -- | Full data type definition for AppMeshRouteHttpRoute. See
 -- 'appMeshRouteHttpRoute' for a more convenient constructor.
@@ -19,6 +20,7 @@
   { _appMeshRouteHttpRouteAction :: AppMeshRouteHttpRouteAction
   , _appMeshRouteHttpRouteMatch :: AppMeshRouteHttpRouteMatch
   , _appMeshRouteHttpRouteRetryPolicy :: Maybe AppMeshRouteHttpRetryPolicy
+  , _appMeshRouteHttpRouteTimeout :: Maybe AppMeshRouteHttpTimeout
   } deriving (Show, Eq)
 
 instance ToJSON AppMeshRouteHttpRoute where
@@ -28,6 +30,7 @@
     [ (Just . ("Action",) . toJSON) _appMeshRouteHttpRouteAction
     , (Just . ("Match",) . toJSON) _appMeshRouteHttpRouteMatch
     , fmap (("RetryPolicy",) . toJSON) _appMeshRouteHttpRouteRetryPolicy
+    , fmap (("Timeout",) . toJSON) _appMeshRouteHttpRouteTimeout
     ]
 
 -- | Constructor for 'AppMeshRouteHttpRoute' containing required fields as
@@ -41,6 +44,7 @@
   { _appMeshRouteHttpRouteAction = actionarg
   , _appMeshRouteHttpRouteMatch = matcharg
   , _appMeshRouteHttpRouteRetryPolicy = Nothing
+  , _appMeshRouteHttpRouteTimeout = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-action
@@ -54,3 +58,7 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-retrypolicy
 amrhrRetryPolicy :: Lens' AppMeshRouteHttpRoute (Maybe AppMeshRouteHttpRetryPolicy)
 amrhrRetryPolicy = lens _appMeshRouteHttpRouteRetryPolicy (\s a -> s { _appMeshRouteHttpRouteRetryPolicy = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httproute.html#cfn-appmesh-route-httproute-timeout
+amrhrTimeout :: Lens' AppMeshRouteHttpRoute (Maybe AppMeshRouteHttpTimeout)
+amrhrTimeout = lens _appMeshRouteHttpRouteTimeout (\s a -> s { _appMeshRouteHttpRouteTimeout = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshRouteHttpTimeout.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteHttpTimeout.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteHttpTimeout.hs
@@ -0,0 +1,45 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httptimeout.html
+
+module Stratosphere.ResourceProperties.AppMeshRouteHttpTimeout where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.AppMeshRouteDuration
+
+-- | Full data type definition for AppMeshRouteHttpTimeout. See
+-- 'appMeshRouteHttpTimeout' for a more convenient constructor.
+data AppMeshRouteHttpTimeout =
+  AppMeshRouteHttpTimeout
+  { _appMeshRouteHttpTimeoutIdle :: Maybe AppMeshRouteDuration
+  , _appMeshRouteHttpTimeoutPerRequest :: Maybe AppMeshRouteDuration
+  } deriving (Show, Eq)
+
+instance ToJSON AppMeshRouteHttpTimeout where
+  toJSON AppMeshRouteHttpTimeout{..} =
+    object $
+    catMaybes
+    [ fmap (("Idle",) . toJSON) _appMeshRouteHttpTimeoutIdle
+    , fmap (("PerRequest",) . toJSON) _appMeshRouteHttpTimeoutPerRequest
+    ]
+
+-- | Constructor for 'AppMeshRouteHttpTimeout' containing required fields as
+-- arguments.
+appMeshRouteHttpTimeout
+  :: AppMeshRouteHttpTimeout
+appMeshRouteHttpTimeout  =
+  AppMeshRouteHttpTimeout
+  { _appMeshRouteHttpTimeoutIdle = Nothing
+  , _appMeshRouteHttpTimeoutPerRequest = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httptimeout.html#cfn-appmesh-route-httptimeout-idle
+amrhtIdle :: Lens' AppMeshRouteHttpTimeout (Maybe AppMeshRouteDuration)
+amrhtIdle = lens _appMeshRouteHttpTimeoutIdle (\s a -> s { _appMeshRouteHttpTimeoutIdle = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-httptimeout.html#cfn-appmesh-route-httptimeout-perrequest
+amrhtPerRequest :: Lens' AppMeshRouteHttpTimeout (Maybe AppMeshRouteDuration)
+amrhtPerRequest = lens _appMeshRouteHttpTimeoutPerRequest (\s a -> s { _appMeshRouteHttpTimeoutPerRequest = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshRouteTcpRoute.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteTcpRoute.hs
--- a/library-gen/Stratosphere/ResourceProperties/AppMeshRouteTcpRoute.hs
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteTcpRoute.hs
@@ -9,12 +9,14 @@
 
 import Stratosphere.ResourceImports
 import Stratosphere.ResourceProperties.AppMeshRouteTcpRouteAction
+import Stratosphere.ResourceProperties.AppMeshRouteTcpTimeout
 
 -- | Full data type definition for AppMeshRouteTcpRoute. See
 -- 'appMeshRouteTcpRoute' for a more convenient constructor.
 data AppMeshRouteTcpRoute =
   AppMeshRouteTcpRoute
   { _appMeshRouteTcpRouteAction :: AppMeshRouteTcpRouteAction
+  , _appMeshRouteTcpRouteTimeout :: Maybe AppMeshRouteTcpTimeout
   } deriving (Show, Eq)
 
 instance ToJSON AppMeshRouteTcpRoute where
@@ -22,6 +24,7 @@
     object $
     catMaybes
     [ (Just . ("Action",) . toJSON) _appMeshRouteTcpRouteAction
+    , fmap (("Timeout",) . toJSON) _appMeshRouteTcpRouteTimeout
     ]
 
 -- | Constructor for 'AppMeshRouteTcpRoute' containing required fields as
@@ -32,8 +35,13 @@
 appMeshRouteTcpRoute actionarg =
   AppMeshRouteTcpRoute
   { _appMeshRouteTcpRouteAction = actionarg
+  , _appMeshRouteTcpRouteTimeout = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html#cfn-appmesh-route-tcproute-action
 amrtrAction :: Lens' AppMeshRouteTcpRoute AppMeshRouteTcpRouteAction
 amrtrAction = lens _appMeshRouteTcpRouteAction (\s a -> s { _appMeshRouteTcpRouteAction = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcproute.html#cfn-appmesh-route-tcproute-timeout
+amrtrTimeout :: Lens' AppMeshRouteTcpRoute (Maybe AppMeshRouteTcpTimeout)
+amrtrTimeout = lens _appMeshRouteTcpRouteTimeout (\s a -> s { _appMeshRouteTcpRouteTimeout = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshRouteTcpTimeout.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteTcpTimeout.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshRouteTcpTimeout.hs
@@ -0,0 +1,38 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcptimeout.html
+
+module Stratosphere.ResourceProperties.AppMeshRouteTcpTimeout where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.AppMeshRouteDuration
+
+-- | Full data type definition for AppMeshRouteTcpTimeout. See
+-- 'appMeshRouteTcpTimeout' for a more convenient constructor.
+data AppMeshRouteTcpTimeout =
+  AppMeshRouteTcpTimeout
+  { _appMeshRouteTcpTimeoutIdle :: Maybe AppMeshRouteDuration
+  } deriving (Show, Eq)
+
+instance ToJSON AppMeshRouteTcpTimeout where
+  toJSON AppMeshRouteTcpTimeout{..} =
+    object $
+    catMaybes
+    [ fmap (("Idle",) . toJSON) _appMeshRouteTcpTimeoutIdle
+    ]
+
+-- | Constructor for 'AppMeshRouteTcpTimeout' containing required fields as
+-- arguments.
+appMeshRouteTcpTimeout
+  :: AppMeshRouteTcpTimeout
+appMeshRouteTcpTimeout  =
+  AppMeshRouteTcpTimeout
+  { _appMeshRouteTcpTimeoutIdle = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-route-tcptimeout.html#cfn-appmesh-route-tcptimeout-idle
+amrttIdle :: Lens' AppMeshRouteTcpTimeout (Maybe AppMeshRouteDuration)
+amrttIdle = lens _appMeshRouteTcpTimeoutIdle (\s a -> s { _appMeshRouteTcpTimeoutIdle = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeDuration.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeDuration.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeDuration.hs
@@ -0,0 +1,47 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-duration.html
+
+module Stratosphere.ResourceProperties.AppMeshVirtualNodeDuration where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for AppMeshVirtualNodeDuration. See
+-- 'appMeshVirtualNodeDuration' for a more convenient constructor.
+data AppMeshVirtualNodeDuration =
+  AppMeshVirtualNodeDuration
+  { _appMeshVirtualNodeDurationUnit :: Val Text
+  , _appMeshVirtualNodeDurationValue :: Val Integer
+  } deriving (Show, Eq)
+
+instance ToJSON AppMeshVirtualNodeDuration where
+  toJSON AppMeshVirtualNodeDuration{..} =
+    object $
+    catMaybes
+    [ (Just . ("Unit",) . toJSON) _appMeshVirtualNodeDurationUnit
+    , (Just . ("Value",) . toJSON) _appMeshVirtualNodeDurationValue
+    ]
+
+-- | Constructor for 'AppMeshVirtualNodeDuration' containing required fields
+-- as arguments.
+appMeshVirtualNodeDuration
+  :: Val Text -- ^ 'amvndUnit'
+  -> Val Integer -- ^ 'amvndValue'
+  -> AppMeshVirtualNodeDuration
+appMeshVirtualNodeDuration unitarg valuearg =
+  AppMeshVirtualNodeDuration
+  { _appMeshVirtualNodeDurationUnit = unitarg
+  , _appMeshVirtualNodeDurationValue = valuearg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-duration.html#cfn-appmesh-virtualnode-duration-unit
+amvndUnit :: Lens' AppMeshVirtualNodeDuration (Val Text)
+amvndUnit = lens _appMeshVirtualNodeDurationUnit (\s a -> s { _appMeshVirtualNodeDurationUnit = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-duration.html#cfn-appmesh-virtualnode-duration-value
+amvndValue :: Lens' AppMeshVirtualNodeDuration (Val Integer)
+amvndValue = lens _appMeshVirtualNodeDurationValue (\s a -> s { _appMeshVirtualNodeDurationValue = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeGrpcTimeout.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeGrpcTimeout.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeGrpcTimeout.hs
@@ -0,0 +1,45 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-grpctimeout.html
+
+module Stratosphere.ResourceProperties.AppMeshVirtualNodeGrpcTimeout where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeDuration
+
+-- | Full data type definition for AppMeshVirtualNodeGrpcTimeout. See
+-- 'appMeshVirtualNodeGrpcTimeout' for a more convenient constructor.
+data AppMeshVirtualNodeGrpcTimeout =
+  AppMeshVirtualNodeGrpcTimeout
+  { _appMeshVirtualNodeGrpcTimeoutIdle :: Maybe AppMeshVirtualNodeDuration
+  , _appMeshVirtualNodeGrpcTimeoutPerRequest :: Maybe AppMeshVirtualNodeDuration
+  } deriving (Show, Eq)
+
+instance ToJSON AppMeshVirtualNodeGrpcTimeout where
+  toJSON AppMeshVirtualNodeGrpcTimeout{..} =
+    object $
+    catMaybes
+    [ fmap (("Idle",) . toJSON) _appMeshVirtualNodeGrpcTimeoutIdle
+    , fmap (("PerRequest",) . toJSON) _appMeshVirtualNodeGrpcTimeoutPerRequest
+    ]
+
+-- | Constructor for 'AppMeshVirtualNodeGrpcTimeout' containing required
+-- fields as arguments.
+appMeshVirtualNodeGrpcTimeout
+  :: AppMeshVirtualNodeGrpcTimeout
+appMeshVirtualNodeGrpcTimeout  =
+  AppMeshVirtualNodeGrpcTimeout
+  { _appMeshVirtualNodeGrpcTimeoutIdle = Nothing
+  , _appMeshVirtualNodeGrpcTimeoutPerRequest = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-grpctimeout.html#cfn-appmesh-virtualnode-grpctimeout-idle
+amvngtIdle :: Lens' AppMeshVirtualNodeGrpcTimeout (Maybe AppMeshVirtualNodeDuration)
+amvngtIdle = lens _appMeshVirtualNodeGrpcTimeoutIdle (\s a -> s { _appMeshVirtualNodeGrpcTimeoutIdle = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-grpctimeout.html#cfn-appmesh-virtualnode-grpctimeout-perrequest
+amvngtPerRequest :: Lens' AppMeshVirtualNodeGrpcTimeout (Maybe AppMeshVirtualNodeDuration)
+amvngtPerRequest = lens _appMeshVirtualNodeGrpcTimeoutPerRequest (\s a -> s { _appMeshVirtualNodeGrpcTimeoutPerRequest = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeHttpTimeout.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeHttpTimeout.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeHttpTimeout.hs
@@ -0,0 +1,45 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-httptimeout.html
+
+module Stratosphere.ResourceProperties.AppMeshVirtualNodeHttpTimeout where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeDuration
+
+-- | Full data type definition for AppMeshVirtualNodeHttpTimeout. See
+-- 'appMeshVirtualNodeHttpTimeout' for a more convenient constructor.
+data AppMeshVirtualNodeHttpTimeout =
+  AppMeshVirtualNodeHttpTimeout
+  { _appMeshVirtualNodeHttpTimeoutIdle :: Maybe AppMeshVirtualNodeDuration
+  , _appMeshVirtualNodeHttpTimeoutPerRequest :: Maybe AppMeshVirtualNodeDuration
+  } deriving (Show, Eq)
+
+instance ToJSON AppMeshVirtualNodeHttpTimeout where
+  toJSON AppMeshVirtualNodeHttpTimeout{..} =
+    object $
+    catMaybes
+    [ fmap (("Idle",) . toJSON) _appMeshVirtualNodeHttpTimeoutIdle
+    , fmap (("PerRequest",) . toJSON) _appMeshVirtualNodeHttpTimeoutPerRequest
+    ]
+
+-- | Constructor for 'AppMeshVirtualNodeHttpTimeout' containing required
+-- fields as arguments.
+appMeshVirtualNodeHttpTimeout
+  :: AppMeshVirtualNodeHttpTimeout
+appMeshVirtualNodeHttpTimeout  =
+  AppMeshVirtualNodeHttpTimeout
+  { _appMeshVirtualNodeHttpTimeoutIdle = Nothing
+  , _appMeshVirtualNodeHttpTimeoutPerRequest = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-httptimeout.html#cfn-appmesh-virtualnode-httptimeout-idle
+amvnhtIdle :: Lens' AppMeshVirtualNodeHttpTimeout (Maybe AppMeshVirtualNodeDuration)
+amvnhtIdle = lens _appMeshVirtualNodeHttpTimeoutIdle (\s a -> s { _appMeshVirtualNodeHttpTimeoutIdle = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-httptimeout.html#cfn-appmesh-virtualnode-httptimeout-perrequest
+amvnhtPerRequest :: Lens' AppMeshVirtualNodeHttpTimeout (Maybe AppMeshVirtualNodeDuration)
+amvnhtPerRequest = lens _appMeshVirtualNodeHttpTimeoutPerRequest (\s a -> s { _appMeshVirtualNodeHttpTimeoutPerRequest = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeListener.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeListener.hs
--- a/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeListener.hs
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeListener.hs
@@ -11,6 +11,7 @@
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeHealthCheck
 import Stratosphere.ResourceProperties.AppMeshVirtualNodePortMapping
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTls
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTimeout
 
 -- | Full data type definition for AppMeshVirtualNodeListener. See
 -- 'appMeshVirtualNodeListener' for a more convenient constructor.
@@ -19,6 +20,7 @@
   { _appMeshVirtualNodeListenerHealthCheck :: Maybe AppMeshVirtualNodeHealthCheck
   , _appMeshVirtualNodeListenerPortMapping :: AppMeshVirtualNodePortMapping
   , _appMeshVirtualNodeListenerTLS :: Maybe AppMeshVirtualNodeListenerTls
+  , _appMeshVirtualNodeListenerTimeout :: Maybe AppMeshVirtualNodeListenerTimeout
   } deriving (Show, Eq)
 
 instance ToJSON AppMeshVirtualNodeListener where
@@ -28,6 +30,7 @@
     [ fmap (("HealthCheck",) . toJSON) _appMeshVirtualNodeListenerHealthCheck
     , (Just . ("PortMapping",) . toJSON) _appMeshVirtualNodeListenerPortMapping
     , fmap (("TLS",) . toJSON) _appMeshVirtualNodeListenerTLS
+    , fmap (("Timeout",) . toJSON) _appMeshVirtualNodeListenerTimeout
     ]
 
 -- | Constructor for 'AppMeshVirtualNodeListener' containing required fields
@@ -40,6 +43,7 @@
   { _appMeshVirtualNodeListenerHealthCheck = Nothing
   , _appMeshVirtualNodeListenerPortMapping = portMappingarg
   , _appMeshVirtualNodeListenerTLS = Nothing
+  , _appMeshVirtualNodeListenerTimeout = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-healthcheck
@@ -53,3 +57,7 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-tls
 amvnlTLS :: Lens' AppMeshVirtualNodeListener (Maybe AppMeshVirtualNodeListenerTls)
 amvnlTLS = lens _appMeshVirtualNodeListenerTLS (\s a -> s { _appMeshVirtualNodeListenerTLS = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html#cfn-appmesh-virtualnode-listener-timeout
+amvnlTimeout :: Lens' AppMeshVirtualNodeListener (Maybe AppMeshVirtualNodeListenerTimeout)
+amvnlTimeout = lens _appMeshVirtualNodeListenerTimeout (\s a -> s { _appMeshVirtualNodeListenerTimeout = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeListenerTimeout.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeListenerTimeout.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeListenerTimeout.hs
@@ -0,0 +1,61 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html
+
+module Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTimeout where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeGrpcTimeout
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeHttpTimeout
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeTcpTimeout
+
+-- | Full data type definition for AppMeshVirtualNodeListenerTimeout. See
+-- 'appMeshVirtualNodeListenerTimeout' for a more convenient constructor.
+data AppMeshVirtualNodeListenerTimeout =
+  AppMeshVirtualNodeListenerTimeout
+  { _appMeshVirtualNodeListenerTimeoutGRPC :: Maybe AppMeshVirtualNodeGrpcTimeout
+  , _appMeshVirtualNodeListenerTimeoutHTTP :: Maybe AppMeshVirtualNodeHttpTimeout
+  , _appMeshVirtualNodeListenerTimeoutHTTP2 :: Maybe AppMeshVirtualNodeHttpTimeout
+  , _appMeshVirtualNodeListenerTimeoutTCP :: Maybe AppMeshVirtualNodeTcpTimeout
+  } deriving (Show, Eq)
+
+instance ToJSON AppMeshVirtualNodeListenerTimeout where
+  toJSON AppMeshVirtualNodeListenerTimeout{..} =
+    object $
+    catMaybes
+    [ fmap (("GRPC",) . toJSON) _appMeshVirtualNodeListenerTimeoutGRPC
+    , fmap (("HTTP",) . toJSON) _appMeshVirtualNodeListenerTimeoutHTTP
+    , fmap (("HTTP2",) . toJSON) _appMeshVirtualNodeListenerTimeoutHTTP2
+    , fmap (("TCP",) . toJSON) _appMeshVirtualNodeListenerTimeoutTCP
+    ]
+
+-- | Constructor for 'AppMeshVirtualNodeListenerTimeout' containing required
+-- fields as arguments.
+appMeshVirtualNodeListenerTimeout
+  :: AppMeshVirtualNodeListenerTimeout
+appMeshVirtualNodeListenerTimeout  =
+  AppMeshVirtualNodeListenerTimeout
+  { _appMeshVirtualNodeListenerTimeoutGRPC = Nothing
+  , _appMeshVirtualNodeListenerTimeoutHTTP = Nothing
+  , _appMeshVirtualNodeListenerTimeoutHTTP2 = Nothing
+  , _appMeshVirtualNodeListenerTimeoutTCP = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-grpc
+amvnltGRPC :: Lens' AppMeshVirtualNodeListenerTimeout (Maybe AppMeshVirtualNodeGrpcTimeout)
+amvnltGRPC = lens _appMeshVirtualNodeListenerTimeoutGRPC (\s a -> s { _appMeshVirtualNodeListenerTimeoutGRPC = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-http
+amvnltHTTP :: Lens' AppMeshVirtualNodeListenerTimeout (Maybe AppMeshVirtualNodeHttpTimeout)
+amvnltHTTP = lens _appMeshVirtualNodeListenerTimeoutHTTP (\s a -> s { _appMeshVirtualNodeListenerTimeoutHTTP = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-http2
+amvnltHTTP2 :: Lens' AppMeshVirtualNodeListenerTimeout (Maybe AppMeshVirtualNodeHttpTimeout)
+amvnltHTTP2 = lens _appMeshVirtualNodeListenerTimeoutHTTP2 (\s a -> s { _appMeshVirtualNodeListenerTimeoutHTTP2 = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listenertimeout.html#cfn-appmesh-virtualnode-listenertimeout-tcp
+amvnltTCP :: Lens' AppMeshVirtualNodeListenerTimeout (Maybe AppMeshVirtualNodeTcpTimeout)
+amvnltTCP = lens _appMeshVirtualNodeListenerTimeoutTCP (\s a -> s { _appMeshVirtualNodeListenerTimeoutTCP = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeTcpTimeout.hs b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeTcpTimeout.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AppMeshVirtualNodeTcpTimeout.hs
@@ -0,0 +1,38 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tcptimeout.html
+
+module Stratosphere.ResourceProperties.AppMeshVirtualNodeTcpTimeout where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeDuration
+
+-- | Full data type definition for AppMeshVirtualNodeTcpTimeout. See
+-- 'appMeshVirtualNodeTcpTimeout' for a more convenient constructor.
+data AppMeshVirtualNodeTcpTimeout =
+  AppMeshVirtualNodeTcpTimeout
+  { _appMeshVirtualNodeTcpTimeoutIdle :: Maybe AppMeshVirtualNodeDuration
+  } deriving (Show, Eq)
+
+instance ToJSON AppMeshVirtualNodeTcpTimeout where
+  toJSON AppMeshVirtualNodeTcpTimeout{..} =
+    object $
+    catMaybes
+    [ fmap (("Idle",) . toJSON) _appMeshVirtualNodeTcpTimeoutIdle
+    ]
+
+-- | Constructor for 'AppMeshVirtualNodeTcpTimeout' containing required fields
+-- as arguments.
+appMeshVirtualNodeTcpTimeout
+  :: AppMeshVirtualNodeTcpTimeout
+appMeshVirtualNodeTcpTimeout  =
+  AppMeshVirtualNodeTcpTimeout
+  { _appMeshVirtualNodeTcpTimeoutIdle = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-tcptimeout.html#cfn-appmesh-virtualnode-tcptimeout-idle
+amvnttIdle :: Lens' AppMeshVirtualNodeTcpTimeout (Maybe AppMeshVirtualNodeDuration)
+amvnttIdle = lens _appMeshVirtualNodeTcpTimeoutIdle (\s a -> s { _appMeshVirtualNodeTcpTimeoutIdle = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/AthenaDataCatalogTags.hs b/library-gen/Stratosphere/ResourceProperties/AthenaDataCatalogTags.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/AthenaDataCatalogTags.hs
@@ -0,0 +1,38 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-datacatalog-tags.html
+
+module Stratosphere.ResourceProperties.AthenaDataCatalogTags where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.Tag
+
+-- | Full data type definition for AthenaDataCatalogTags. See
+-- 'athenaDataCatalogTags' for a more convenient constructor.
+data AthenaDataCatalogTags =
+  AthenaDataCatalogTags
+  { _athenaDataCatalogTagsTags :: Maybe [Tag]
+  } deriving (Show, Eq)
+
+instance ToJSON AthenaDataCatalogTags where
+  toJSON AthenaDataCatalogTags{..} =
+    object $
+    catMaybes
+    [ fmap (("Tags",) . toJSON) _athenaDataCatalogTagsTags
+    ]
+
+-- | Constructor for 'AthenaDataCatalogTags' containing required fields as
+-- arguments.
+athenaDataCatalogTags
+  :: AthenaDataCatalogTags
+athenaDataCatalogTags  =
+  AthenaDataCatalogTags
+  { _athenaDataCatalogTagsTags = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-datacatalog-tags.html#cfn-athena-datacatalog-tags-tags
+adctTags :: Lens' AthenaDataCatalogTags (Maybe [Tag])
+adctTags = lens _athenaDataCatalogTagsTags (\s a -> s { _athenaDataCatalogTagsTags = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionCacheBehavior.hs b/library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionCacheBehavior.hs
--- a/library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionCacheBehavior.hs
+++ b/library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionCacheBehavior.hs
@@ -16,14 +16,16 @@
 data CloudFrontDistributionCacheBehavior =
   CloudFrontDistributionCacheBehavior
   { _cloudFrontDistributionCacheBehaviorAllowedMethods :: Maybe (ValList Text)
+  , _cloudFrontDistributionCacheBehaviorCachePolicyId :: Maybe (Val Text)
   , _cloudFrontDistributionCacheBehaviorCachedMethods :: Maybe (ValList Text)
   , _cloudFrontDistributionCacheBehaviorCompress :: Maybe (Val Bool)
   , _cloudFrontDistributionCacheBehaviorDefaultTTL :: Maybe (Val Double)
   , _cloudFrontDistributionCacheBehaviorFieldLevelEncryptionId :: Maybe (Val Text)
-  , _cloudFrontDistributionCacheBehaviorForwardedValues :: CloudFrontDistributionForwardedValues
+  , _cloudFrontDistributionCacheBehaviorForwardedValues :: Maybe CloudFrontDistributionForwardedValues
   , _cloudFrontDistributionCacheBehaviorLambdaFunctionAssociations :: Maybe [CloudFrontDistributionLambdaFunctionAssociation]
   , _cloudFrontDistributionCacheBehaviorMaxTTL :: Maybe (Val Double)
   , _cloudFrontDistributionCacheBehaviorMinTTL :: Maybe (Val Double)
+  , _cloudFrontDistributionCacheBehaviorOriginRequestPolicyId :: Maybe (Val Text)
   , _cloudFrontDistributionCacheBehaviorPathPattern :: Val Text
   , _cloudFrontDistributionCacheBehaviorSmoothStreaming :: Maybe (Val Bool)
   , _cloudFrontDistributionCacheBehaviorTargetOriginId :: Val Text
@@ -36,14 +38,16 @@
     object $
     catMaybes
     [ fmap (("AllowedMethods",) . toJSON) _cloudFrontDistributionCacheBehaviorAllowedMethods
+    , fmap (("CachePolicyId",) . toJSON) _cloudFrontDistributionCacheBehaviorCachePolicyId
     , fmap (("CachedMethods",) . toJSON) _cloudFrontDistributionCacheBehaviorCachedMethods
     , fmap (("Compress",) . toJSON) _cloudFrontDistributionCacheBehaviorCompress
     , fmap (("DefaultTTL",) . toJSON) _cloudFrontDistributionCacheBehaviorDefaultTTL
     , fmap (("FieldLevelEncryptionId",) . toJSON) _cloudFrontDistributionCacheBehaviorFieldLevelEncryptionId
-    , (Just . ("ForwardedValues",) . toJSON) _cloudFrontDistributionCacheBehaviorForwardedValues
+    , fmap (("ForwardedValues",) . toJSON) _cloudFrontDistributionCacheBehaviorForwardedValues
     , fmap (("LambdaFunctionAssociations",) . toJSON) _cloudFrontDistributionCacheBehaviorLambdaFunctionAssociations
     , fmap (("MaxTTL",) . toJSON) _cloudFrontDistributionCacheBehaviorMaxTTL
     , fmap (("MinTTL",) . toJSON) _cloudFrontDistributionCacheBehaviorMinTTL
+    , fmap (("OriginRequestPolicyId",) . toJSON) _cloudFrontDistributionCacheBehaviorOriginRequestPolicyId
     , (Just . ("PathPattern",) . toJSON) _cloudFrontDistributionCacheBehaviorPathPattern
     , fmap (("SmoothStreaming",) . toJSON) _cloudFrontDistributionCacheBehaviorSmoothStreaming
     , (Just . ("TargetOriginId",) . toJSON) _cloudFrontDistributionCacheBehaviorTargetOriginId
@@ -54,22 +58,23 @@
 -- | Constructor for 'CloudFrontDistributionCacheBehavior' containing required
 -- fields as arguments.
 cloudFrontDistributionCacheBehavior
-  :: CloudFrontDistributionForwardedValues -- ^ 'cfdcbForwardedValues'
-  -> Val Text -- ^ 'cfdcbPathPattern'
+  :: Val Text -- ^ 'cfdcbPathPattern'
   -> Val Text -- ^ 'cfdcbTargetOriginId'
   -> Val Text -- ^ 'cfdcbViewerProtocolPolicy'
   -> CloudFrontDistributionCacheBehavior
-cloudFrontDistributionCacheBehavior forwardedValuesarg pathPatternarg targetOriginIdarg viewerProtocolPolicyarg =
+cloudFrontDistributionCacheBehavior pathPatternarg targetOriginIdarg viewerProtocolPolicyarg =
   CloudFrontDistributionCacheBehavior
   { _cloudFrontDistributionCacheBehaviorAllowedMethods = Nothing
+  , _cloudFrontDistributionCacheBehaviorCachePolicyId = Nothing
   , _cloudFrontDistributionCacheBehaviorCachedMethods = Nothing
   , _cloudFrontDistributionCacheBehaviorCompress = Nothing
   , _cloudFrontDistributionCacheBehaviorDefaultTTL = Nothing
   , _cloudFrontDistributionCacheBehaviorFieldLevelEncryptionId = Nothing
-  , _cloudFrontDistributionCacheBehaviorForwardedValues = forwardedValuesarg
+  , _cloudFrontDistributionCacheBehaviorForwardedValues = Nothing
   , _cloudFrontDistributionCacheBehaviorLambdaFunctionAssociations = Nothing
   , _cloudFrontDistributionCacheBehaviorMaxTTL = Nothing
   , _cloudFrontDistributionCacheBehaviorMinTTL = Nothing
+  , _cloudFrontDistributionCacheBehaviorOriginRequestPolicyId = Nothing
   , _cloudFrontDistributionCacheBehaviorPathPattern = pathPatternarg
   , _cloudFrontDistributionCacheBehaviorSmoothStreaming = Nothing
   , _cloudFrontDistributionCacheBehaviorTargetOriginId = targetOriginIdarg
@@ -81,6 +86,10 @@
 cfdcbAllowedMethods :: Lens' CloudFrontDistributionCacheBehavior (Maybe (ValList Text))
 cfdcbAllowedMethods = lens _cloudFrontDistributionCacheBehaviorAllowedMethods (\s a -> s { _cloudFrontDistributionCacheBehaviorAllowedMethods = a })
 
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-cachepolicyid
+cfdcbCachePolicyId :: Lens' CloudFrontDistributionCacheBehavior (Maybe (Val Text))
+cfdcbCachePolicyId = lens _cloudFrontDistributionCacheBehaviorCachePolicyId (\s a -> s { _cloudFrontDistributionCacheBehaviorCachePolicyId = a })
+
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-cachedmethods
 cfdcbCachedMethods :: Lens' CloudFrontDistributionCacheBehavior (Maybe (ValList Text))
 cfdcbCachedMethods = lens _cloudFrontDistributionCacheBehaviorCachedMethods (\s a -> s { _cloudFrontDistributionCacheBehaviorCachedMethods = a })
@@ -98,7 +107,7 @@
 cfdcbFieldLevelEncryptionId = lens _cloudFrontDistributionCacheBehaviorFieldLevelEncryptionId (\s a -> s { _cloudFrontDistributionCacheBehaviorFieldLevelEncryptionId = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-forwardedvalues
-cfdcbForwardedValues :: Lens' CloudFrontDistributionCacheBehavior CloudFrontDistributionForwardedValues
+cfdcbForwardedValues :: Lens' CloudFrontDistributionCacheBehavior (Maybe CloudFrontDistributionForwardedValues)
 cfdcbForwardedValues = lens _cloudFrontDistributionCacheBehaviorForwardedValues (\s a -> s { _cloudFrontDistributionCacheBehaviorForwardedValues = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-lambdafunctionassociations
@@ -112,6 +121,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-minttl
 cfdcbMinTTL :: Lens' CloudFrontDistributionCacheBehavior (Maybe (Val Double))
 cfdcbMinTTL = lens _cloudFrontDistributionCacheBehaviorMinTTL (\s a -> s { _cloudFrontDistributionCacheBehaviorMinTTL = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-originrequestpolicyid
+cfdcbOriginRequestPolicyId :: Lens' CloudFrontDistributionCacheBehavior (Maybe (Val Text))
+cfdcbOriginRequestPolicyId = lens _cloudFrontDistributionCacheBehaviorOriginRequestPolicyId (\s a -> s { _cloudFrontDistributionCacheBehaviorOriginRequestPolicyId = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-pathpattern
 cfdcbPathPattern :: Lens' CloudFrontDistributionCacheBehavior (Val Text)
diff --git a/library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionDefaultCacheBehavior.hs b/library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionDefaultCacheBehavior.hs
--- a/library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionDefaultCacheBehavior.hs
+++ b/library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionDefaultCacheBehavior.hs
@@ -17,14 +17,16 @@
 data CloudFrontDistributionDefaultCacheBehavior =
   CloudFrontDistributionDefaultCacheBehavior
   { _cloudFrontDistributionDefaultCacheBehaviorAllowedMethods :: Maybe (ValList Text)
+  , _cloudFrontDistributionDefaultCacheBehaviorCachePolicyId :: Maybe (Val Text)
   , _cloudFrontDistributionDefaultCacheBehaviorCachedMethods :: Maybe (ValList Text)
   , _cloudFrontDistributionDefaultCacheBehaviorCompress :: Maybe (Val Bool)
   , _cloudFrontDistributionDefaultCacheBehaviorDefaultTTL :: Maybe (Val Double)
   , _cloudFrontDistributionDefaultCacheBehaviorFieldLevelEncryptionId :: Maybe (Val Text)
-  , _cloudFrontDistributionDefaultCacheBehaviorForwardedValues :: CloudFrontDistributionForwardedValues
+  , _cloudFrontDistributionDefaultCacheBehaviorForwardedValues :: Maybe CloudFrontDistributionForwardedValues
   , _cloudFrontDistributionDefaultCacheBehaviorLambdaFunctionAssociations :: Maybe [CloudFrontDistributionLambdaFunctionAssociation]
   , _cloudFrontDistributionDefaultCacheBehaviorMaxTTL :: Maybe (Val Double)
   , _cloudFrontDistributionDefaultCacheBehaviorMinTTL :: Maybe (Val Double)
+  , _cloudFrontDistributionDefaultCacheBehaviorOriginRequestPolicyId :: Maybe (Val Text)
   , _cloudFrontDistributionDefaultCacheBehaviorSmoothStreaming :: Maybe (Val Bool)
   , _cloudFrontDistributionDefaultCacheBehaviorTargetOriginId :: Val Text
   , _cloudFrontDistributionDefaultCacheBehaviorTrustedSigners :: Maybe (ValList Text)
@@ -36,14 +38,16 @@
     object $
     catMaybes
     [ fmap (("AllowedMethods",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorAllowedMethods
+    , fmap (("CachePolicyId",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorCachePolicyId
     , fmap (("CachedMethods",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorCachedMethods
     , fmap (("Compress",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorCompress
     , fmap (("DefaultTTL",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorDefaultTTL
     , fmap (("FieldLevelEncryptionId",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorFieldLevelEncryptionId
-    , (Just . ("ForwardedValues",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorForwardedValues
+    , fmap (("ForwardedValues",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorForwardedValues
     , fmap (("LambdaFunctionAssociations",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorLambdaFunctionAssociations
     , fmap (("MaxTTL",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorMaxTTL
     , fmap (("MinTTL",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorMinTTL
+    , fmap (("OriginRequestPolicyId",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorOriginRequestPolicyId
     , fmap (("SmoothStreaming",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorSmoothStreaming
     , (Just . ("TargetOriginId",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorTargetOriginId
     , fmap (("TrustedSigners",) . toJSON) _cloudFrontDistributionDefaultCacheBehaviorTrustedSigners
@@ -53,21 +57,22 @@
 -- | Constructor for 'CloudFrontDistributionDefaultCacheBehavior' containing
 -- required fields as arguments.
 cloudFrontDistributionDefaultCacheBehavior
-  :: CloudFrontDistributionForwardedValues -- ^ 'cfddcbForwardedValues'
-  -> Val Text -- ^ 'cfddcbTargetOriginId'
+  :: Val Text -- ^ 'cfddcbTargetOriginId'
   -> Val Text -- ^ 'cfddcbViewerProtocolPolicy'
   -> CloudFrontDistributionDefaultCacheBehavior
-cloudFrontDistributionDefaultCacheBehavior forwardedValuesarg targetOriginIdarg viewerProtocolPolicyarg =
+cloudFrontDistributionDefaultCacheBehavior targetOriginIdarg viewerProtocolPolicyarg =
   CloudFrontDistributionDefaultCacheBehavior
   { _cloudFrontDistributionDefaultCacheBehaviorAllowedMethods = Nothing
+  , _cloudFrontDistributionDefaultCacheBehaviorCachePolicyId = Nothing
   , _cloudFrontDistributionDefaultCacheBehaviorCachedMethods = Nothing
   , _cloudFrontDistributionDefaultCacheBehaviorCompress = Nothing
   , _cloudFrontDistributionDefaultCacheBehaviorDefaultTTL = Nothing
   , _cloudFrontDistributionDefaultCacheBehaviorFieldLevelEncryptionId = Nothing
-  , _cloudFrontDistributionDefaultCacheBehaviorForwardedValues = forwardedValuesarg
+  , _cloudFrontDistributionDefaultCacheBehaviorForwardedValues = Nothing
   , _cloudFrontDistributionDefaultCacheBehaviorLambdaFunctionAssociations = Nothing
   , _cloudFrontDistributionDefaultCacheBehaviorMaxTTL = Nothing
   , _cloudFrontDistributionDefaultCacheBehaviorMinTTL = Nothing
+  , _cloudFrontDistributionDefaultCacheBehaviorOriginRequestPolicyId = Nothing
   , _cloudFrontDistributionDefaultCacheBehaviorSmoothStreaming = Nothing
   , _cloudFrontDistributionDefaultCacheBehaviorTargetOriginId = targetOriginIdarg
   , _cloudFrontDistributionDefaultCacheBehaviorTrustedSigners = Nothing
@@ -78,6 +83,10 @@
 cfddcbAllowedMethods :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (ValList Text))
 cfddcbAllowedMethods = lens _cloudFrontDistributionDefaultCacheBehaviorAllowedMethods (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorAllowedMethods = a })
 
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-cachepolicyid
+cfddcbCachePolicyId :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (Val Text))
+cfddcbCachePolicyId = lens _cloudFrontDistributionDefaultCacheBehaviorCachePolicyId (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorCachePolicyId = a })
+
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-cachedmethods
 cfddcbCachedMethods :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (ValList Text))
 cfddcbCachedMethods = lens _cloudFrontDistributionDefaultCacheBehaviorCachedMethods (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorCachedMethods = a })
@@ -95,7 +104,7 @@
 cfddcbFieldLevelEncryptionId = lens _cloudFrontDistributionDefaultCacheBehaviorFieldLevelEncryptionId (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorFieldLevelEncryptionId = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-forwardedvalues
-cfddcbForwardedValues :: Lens' CloudFrontDistributionDefaultCacheBehavior CloudFrontDistributionForwardedValues
+cfddcbForwardedValues :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe CloudFrontDistributionForwardedValues)
 cfddcbForwardedValues = lens _cloudFrontDistributionDefaultCacheBehaviorForwardedValues (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorForwardedValues = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-lambdafunctionassociations
@@ -109,6 +118,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-minttl
 cfddcbMinTTL :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (Val Double))
 cfddcbMinTTL = lens _cloudFrontDistributionDefaultCacheBehaviorMinTTL (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorMinTTL = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-originrequestpolicyid
+cfddcbOriginRequestPolicyId :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (Val Text))
+cfddcbOriginRequestPolicyId = lens _cloudFrontDistributionDefaultCacheBehaviorOriginRequestPolicyId (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorOriginRequestPolicyId = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-defaultcachebehavior.html#cfn-cloudfront-distribution-defaultcachebehavior-smoothstreaming
 cfddcbSmoothStreaming :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (Val Bool))
diff --git a/library-gen/Stratosphere/ResourceProperties/CodeBuildProjectBuildStatusConfig.hs b/library-gen/Stratosphere/ResourceProperties/CodeBuildProjectBuildStatusConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/CodeBuildProjectBuildStatusConfig.hs
@@ -0,0 +1,45 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-buildstatusconfig.html
+
+module Stratosphere.ResourceProperties.CodeBuildProjectBuildStatusConfig where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for CodeBuildProjectBuildStatusConfig. See
+-- 'codeBuildProjectBuildStatusConfig' for a more convenient constructor.
+data CodeBuildProjectBuildStatusConfig =
+  CodeBuildProjectBuildStatusConfig
+  { _codeBuildProjectBuildStatusConfigContext :: Maybe (Val Text)
+  , _codeBuildProjectBuildStatusConfigTargetUrl :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON CodeBuildProjectBuildStatusConfig where
+  toJSON CodeBuildProjectBuildStatusConfig{..} =
+    object $
+    catMaybes
+    [ fmap (("Context",) . toJSON) _codeBuildProjectBuildStatusConfigContext
+    , fmap (("TargetUrl",) . toJSON) _codeBuildProjectBuildStatusConfigTargetUrl
+    ]
+
+-- | Constructor for 'CodeBuildProjectBuildStatusConfig' containing required
+-- fields as arguments.
+codeBuildProjectBuildStatusConfig
+  :: CodeBuildProjectBuildStatusConfig
+codeBuildProjectBuildStatusConfig  =
+  CodeBuildProjectBuildStatusConfig
+  { _codeBuildProjectBuildStatusConfigContext = Nothing
+  , _codeBuildProjectBuildStatusConfigTargetUrl = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-buildstatusconfig.html#cfn-codebuild-project-buildstatusconfig-context
+cbpbscContext :: Lens' CodeBuildProjectBuildStatusConfig (Maybe (Val Text))
+cbpbscContext = lens _codeBuildProjectBuildStatusConfigContext (\s a -> s { _codeBuildProjectBuildStatusConfigContext = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-buildstatusconfig.html#cfn-codebuild-project-buildstatusconfig-targeturl
+cbpbscTargetUrl :: Lens' CodeBuildProjectBuildStatusConfig (Maybe (Val Text))
+cbpbscTargetUrl = lens _codeBuildProjectBuildStatusConfigTargetUrl (\s a -> s { _codeBuildProjectBuildStatusConfigTargetUrl = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/CodeBuildProjectSource.hs b/library-gen/Stratosphere/ResourceProperties/CodeBuildProjectSource.hs
--- a/library-gen/Stratosphere/ResourceProperties/CodeBuildProjectSource.hs
+++ b/library-gen/Stratosphere/ResourceProperties/CodeBuildProjectSource.hs
@@ -9,6 +9,7 @@
 
 import Stratosphere.ResourceImports
 import Stratosphere.ResourceProperties.CodeBuildProjectSourceAuth
+import Stratosphere.ResourceProperties.CodeBuildProjectBuildStatusConfig
 import Stratosphere.ResourceProperties.CodeBuildProjectGitSubmodulesConfig
 
 -- | Full data type definition for CodeBuildProjectSource. See
@@ -17,6 +18,7 @@
   CodeBuildProjectSource
   { _codeBuildProjectSourceAuth :: Maybe CodeBuildProjectSourceAuth
   , _codeBuildProjectSourceBuildSpec :: Maybe (Val Text)
+  , _codeBuildProjectSourceBuildStatusConfig :: Maybe CodeBuildProjectBuildStatusConfig
   , _codeBuildProjectSourceGitCloneDepth :: Maybe (Val Integer)
   , _codeBuildProjectSourceGitSubmodulesConfig :: Maybe CodeBuildProjectGitSubmodulesConfig
   , _codeBuildProjectSourceInsecureSsl :: Maybe (Val Bool)
@@ -32,6 +34,7 @@
     catMaybes
     [ fmap (("Auth",) . toJSON) _codeBuildProjectSourceAuth
     , fmap (("BuildSpec",) . toJSON) _codeBuildProjectSourceBuildSpec
+    , fmap (("BuildStatusConfig",) . toJSON) _codeBuildProjectSourceBuildStatusConfig
     , fmap (("GitCloneDepth",) . toJSON) _codeBuildProjectSourceGitCloneDepth
     , fmap (("GitSubmodulesConfig",) . toJSON) _codeBuildProjectSourceGitSubmodulesConfig
     , fmap (("InsecureSsl",) . toJSON) _codeBuildProjectSourceInsecureSsl
@@ -50,6 +53,7 @@
   CodeBuildProjectSource
   { _codeBuildProjectSourceAuth = Nothing
   , _codeBuildProjectSourceBuildSpec = Nothing
+  , _codeBuildProjectSourceBuildStatusConfig = Nothing
   , _codeBuildProjectSourceGitCloneDepth = Nothing
   , _codeBuildProjectSourceGitSubmodulesConfig = Nothing
   , _codeBuildProjectSourceInsecureSsl = Nothing
@@ -66,6 +70,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-buildspec
 cbpsBuildSpec :: Lens' CodeBuildProjectSource (Maybe (Val Text))
 cbpsBuildSpec = lens _codeBuildProjectSourceBuildSpec (\s a -> s { _codeBuildProjectSourceBuildSpec = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-buildstatusconfig
+cbpsBuildStatusConfig :: Lens' CodeBuildProjectSource (Maybe CodeBuildProjectBuildStatusConfig)
+cbpsBuildStatusConfig = lens _codeBuildProjectSourceBuildStatusConfig (\s a -> s { _codeBuildProjectSourceBuildStatusConfig = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-gitclonedepth
 cbpsGitCloneDepth :: Lens' CodeBuildProjectSource (Maybe (Val Integer))
diff --git a/library-gen/Stratosphere/ResourceProperties/EC2PrefixListEntry.hs b/library-gen/Stratosphere/ResourceProperties/EC2PrefixListEntry.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/EC2PrefixListEntry.hs
@@ -0,0 +1,46 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-prefixlist-entry.html
+
+module Stratosphere.ResourceProperties.EC2PrefixListEntry where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for EC2PrefixListEntry. See
+-- 'ec2PrefixListEntry' for a more convenient constructor.
+data EC2PrefixListEntry =
+  EC2PrefixListEntry
+  { _eC2PrefixListEntryCidr :: Val Text
+  , _eC2PrefixListEntryDescription :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON EC2PrefixListEntry where
+  toJSON EC2PrefixListEntry{..} =
+    object $
+    catMaybes
+    [ (Just . ("Cidr",) . toJSON) _eC2PrefixListEntryCidr
+    , fmap (("Description",) . toJSON) _eC2PrefixListEntryDescription
+    ]
+
+-- | Constructor for 'EC2PrefixListEntry' containing required fields as
+-- arguments.
+ec2PrefixListEntry
+  :: Val Text -- ^ 'ecpleCidr'
+  -> EC2PrefixListEntry
+ec2PrefixListEntry cidrarg =
+  EC2PrefixListEntry
+  { _eC2PrefixListEntryCidr = cidrarg
+  , _eC2PrefixListEntryDescription = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-prefixlist-entry.html#cfn-ec2-prefixlist-entry-cidr
+ecpleCidr :: Lens' EC2PrefixListEntry (Val Text)
+ecpleCidr = lens _eC2PrefixListEntryCidr (\s a -> s { _eC2PrefixListEntryCidr = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-prefixlist-entry.html#cfn-ec2-prefixlist-entry-description
+ecpleDescription :: Lens' EC2PrefixListEntry (Maybe (Val Text))
+ecpleDescription = lens _eC2PrefixListEntryDescription (\s a -> s { _eC2PrefixListEntryDescription = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionContainerDependency.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionContainerDependency.hs
--- a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionContainerDependency.hs
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionContainerDependency.hs
@@ -14,34 +14,32 @@
 -- 'ecsTaskDefinitionContainerDependency' for a more convenient constructor.
 data ECSTaskDefinitionContainerDependency =
   ECSTaskDefinitionContainerDependency
-  { _eCSTaskDefinitionContainerDependencyCondition :: Val Text
-  , _eCSTaskDefinitionContainerDependencyContainerName :: Val Text
+  { _eCSTaskDefinitionContainerDependencyCondition :: Maybe (Val Text)
+  , _eCSTaskDefinitionContainerDependencyContainerName :: Maybe (Val Text)
   } deriving (Show, Eq)
 
 instance ToJSON ECSTaskDefinitionContainerDependency where
   toJSON ECSTaskDefinitionContainerDependency{..} =
     object $
     catMaybes
-    [ (Just . ("Condition",) . toJSON) _eCSTaskDefinitionContainerDependencyCondition
-    , (Just . ("ContainerName",) . toJSON) _eCSTaskDefinitionContainerDependencyContainerName
+    [ fmap (("Condition",) . toJSON) _eCSTaskDefinitionContainerDependencyCondition
+    , fmap (("ContainerName",) . toJSON) _eCSTaskDefinitionContainerDependencyContainerName
     ]
 
 -- | Constructor for 'ECSTaskDefinitionContainerDependency' containing
 -- required fields as arguments.
 ecsTaskDefinitionContainerDependency
-  :: Val Text -- ^ 'ecstdcdCondition'
-  -> Val Text -- ^ 'ecstdcdContainerName'
-  -> ECSTaskDefinitionContainerDependency
-ecsTaskDefinitionContainerDependency conditionarg containerNamearg =
+  :: ECSTaskDefinitionContainerDependency
+ecsTaskDefinitionContainerDependency  =
   ECSTaskDefinitionContainerDependency
-  { _eCSTaskDefinitionContainerDependencyCondition = conditionarg
-  , _eCSTaskDefinitionContainerDependencyContainerName = containerNamearg
+  { _eCSTaskDefinitionContainerDependencyCondition = Nothing
+  , _eCSTaskDefinitionContainerDependencyContainerName = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html#cfn-ecs-taskdefinition-containerdependency-condition
-ecstdcdCondition :: Lens' ECSTaskDefinitionContainerDependency (Val Text)
+ecstdcdCondition :: Lens' ECSTaskDefinitionContainerDependency (Maybe (Val Text))
 ecstdcdCondition = lens _eCSTaskDefinitionContainerDependencyCondition (\s a -> s { _eCSTaskDefinitionContainerDependencyCondition = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdependency.html#cfn-ecs-taskdefinition-containerdependency-containername
-ecstdcdContainerName :: Lens' ECSTaskDefinitionContainerDependency (Val Text)
+ecstdcdContainerName :: Lens' ECSTaskDefinitionContainerDependency (Maybe (Val Text))
 ecstdcdContainerName = lens _eCSTaskDefinitionContainerDependencyContainerName (\s a -> s { _eCSTaskDefinitionContainerDependencyContainerName = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionDevice.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionDevice.hs
--- a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionDevice.hs
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionDevice.hs
@@ -15,7 +15,7 @@
 data ECSTaskDefinitionDevice =
   ECSTaskDefinitionDevice
   { _eCSTaskDefinitionDeviceContainerPath :: Maybe (Val Text)
-  , _eCSTaskDefinitionDeviceHostPath :: Val Text
+  , _eCSTaskDefinitionDeviceHostPath :: Maybe (Val Text)
   , _eCSTaskDefinitionDevicePermissions :: Maybe (ValList Text)
   } deriving (Show, Eq)
 
@@ -24,19 +24,18 @@
     object $
     catMaybes
     [ fmap (("ContainerPath",) . toJSON) _eCSTaskDefinitionDeviceContainerPath
-    , (Just . ("HostPath",) . toJSON) _eCSTaskDefinitionDeviceHostPath
+    , fmap (("HostPath",) . toJSON) _eCSTaskDefinitionDeviceHostPath
     , fmap (("Permissions",) . toJSON) _eCSTaskDefinitionDevicePermissions
     ]
 
 -- | Constructor for 'ECSTaskDefinitionDevice' containing required fields as
 -- arguments.
 ecsTaskDefinitionDevice
-  :: Val Text -- ^ 'ecstddHostPath'
-  -> ECSTaskDefinitionDevice
-ecsTaskDefinitionDevice hostPatharg =
+  :: ECSTaskDefinitionDevice
+ecsTaskDefinitionDevice  =
   ECSTaskDefinitionDevice
   { _eCSTaskDefinitionDeviceContainerPath = Nothing
-  , _eCSTaskDefinitionDeviceHostPath = hostPatharg
+  , _eCSTaskDefinitionDeviceHostPath = Nothing
   , _eCSTaskDefinitionDevicePermissions = Nothing
   }
 
@@ -45,7 +44,7 @@
 ecstddContainerPath = lens _eCSTaskDefinitionDeviceContainerPath (\s a -> s { _eCSTaskDefinitionDeviceContainerPath = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html#cfn-ecs-taskdefinition-device-hostpath
-ecstddHostPath :: Lens' ECSTaskDefinitionDevice (Val Text)
+ecstddHostPath :: Lens' ECSTaskDefinitionDevice (Maybe (Val Text))
 ecstddHostPath = lens _eCSTaskDefinitionDeviceHostPath (\s a -> s { _eCSTaskDefinitionDeviceHostPath = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-device.html#cfn-ecs-taskdefinition-device-permissions
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionHealthCheck.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionHealthCheck.hs
--- a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionHealthCheck.hs
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionHealthCheck.hs
@@ -14,7 +14,7 @@
 -- 'ecsTaskDefinitionHealthCheck' for a more convenient constructor.
 data ECSTaskDefinitionHealthCheck =
   ECSTaskDefinitionHealthCheck
-  { _eCSTaskDefinitionHealthCheckCommand :: ValList Text
+  { _eCSTaskDefinitionHealthCheckCommand :: Maybe (ValList Text)
   , _eCSTaskDefinitionHealthCheckInterval :: Maybe (Val Integer)
   , _eCSTaskDefinitionHealthCheckRetries :: Maybe (Val Integer)
   , _eCSTaskDefinitionHealthCheckStartPeriod :: Maybe (Val Integer)
@@ -25,7 +25,7 @@
   toJSON ECSTaskDefinitionHealthCheck{..} =
     object $
     catMaybes
-    [ (Just . ("Command",) . toJSON) _eCSTaskDefinitionHealthCheckCommand
+    [ fmap (("Command",) . toJSON) _eCSTaskDefinitionHealthCheckCommand
     , fmap (("Interval",) . toJSON) _eCSTaskDefinitionHealthCheckInterval
     , fmap (("Retries",) . toJSON) _eCSTaskDefinitionHealthCheckRetries
     , fmap (("StartPeriod",) . toJSON) _eCSTaskDefinitionHealthCheckStartPeriod
@@ -35,11 +35,10 @@
 -- | Constructor for 'ECSTaskDefinitionHealthCheck' containing required fields
 -- as arguments.
 ecsTaskDefinitionHealthCheck
-  :: ValList Text -- ^ 'ecstdhcCommand'
-  -> ECSTaskDefinitionHealthCheck
-ecsTaskDefinitionHealthCheck commandarg =
+  :: ECSTaskDefinitionHealthCheck
+ecsTaskDefinitionHealthCheck  =
   ECSTaskDefinitionHealthCheck
-  { _eCSTaskDefinitionHealthCheckCommand = commandarg
+  { _eCSTaskDefinitionHealthCheckCommand = Nothing
   , _eCSTaskDefinitionHealthCheckInterval = Nothing
   , _eCSTaskDefinitionHealthCheckRetries = Nothing
   , _eCSTaskDefinitionHealthCheckStartPeriod = Nothing
@@ -47,7 +46,7 @@
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-command
-ecstdhcCommand :: Lens' ECSTaskDefinitionHealthCheck (ValList Text)
+ecstdhcCommand :: Lens' ECSTaskDefinitionHealthCheck (Maybe (ValList Text))
 ecstdhcCommand = lens _eCSTaskDefinitionHealthCheckCommand (\s a -> s { _eCSTaskDefinitionHealthCheckCommand = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-interval
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionHostEntry.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionHostEntry.hs
--- a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionHostEntry.hs
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionHostEntry.hs
@@ -14,34 +14,32 @@
 -- 'ecsTaskDefinitionHostEntry' for a more convenient constructor.
 data ECSTaskDefinitionHostEntry =
   ECSTaskDefinitionHostEntry
-  { _eCSTaskDefinitionHostEntryHostname :: Val Text
-  , _eCSTaskDefinitionHostEntryIpAddress :: Val Text
+  { _eCSTaskDefinitionHostEntryHostname :: Maybe (Val Text)
+  , _eCSTaskDefinitionHostEntryIpAddress :: Maybe (Val Text)
   } deriving (Show, Eq)
 
 instance ToJSON ECSTaskDefinitionHostEntry where
   toJSON ECSTaskDefinitionHostEntry{..} =
     object $
     catMaybes
-    [ (Just . ("Hostname",) . toJSON) _eCSTaskDefinitionHostEntryHostname
-    , (Just . ("IpAddress",) . toJSON) _eCSTaskDefinitionHostEntryIpAddress
+    [ fmap (("Hostname",) . toJSON) _eCSTaskDefinitionHostEntryHostname
+    , fmap (("IpAddress",) . toJSON) _eCSTaskDefinitionHostEntryIpAddress
     ]
 
 -- | Constructor for 'ECSTaskDefinitionHostEntry' containing required fields
 -- as arguments.
 ecsTaskDefinitionHostEntry
-  :: Val Text -- ^ 'ecstdheHostname'
-  -> Val Text -- ^ 'ecstdheIpAddress'
-  -> ECSTaskDefinitionHostEntry
-ecsTaskDefinitionHostEntry hostnamearg ipAddressarg =
+  :: ECSTaskDefinitionHostEntry
+ecsTaskDefinitionHostEntry  =
   ECSTaskDefinitionHostEntry
-  { _eCSTaskDefinitionHostEntryHostname = hostnamearg
-  , _eCSTaskDefinitionHostEntryIpAddress = ipAddressarg
+  { _eCSTaskDefinitionHostEntryHostname = Nothing
+  , _eCSTaskDefinitionHostEntryIpAddress = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html#cfn-ecs-taskdefinition-containerdefinition-hostentry-hostname
-ecstdheHostname :: Lens' ECSTaskDefinitionHostEntry (Val Text)
+ecstdheHostname :: Lens' ECSTaskDefinitionHostEntry (Maybe (Val Text))
 ecstdheHostname = lens _eCSTaskDefinitionHostEntryHostname (\s a -> s { _eCSTaskDefinitionHostEntryHostname = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html#cfn-ecs-taskdefinition-containerdefinition-hostentry-ipaddress
-ecstdheIpAddress :: Lens' ECSTaskDefinitionHostEntry (Val Text)
+ecstdheIpAddress :: Lens' ECSTaskDefinitionHostEntry (Maybe (Val Text))
 ecstdheIpAddress = lens _eCSTaskDefinitionHostEntryIpAddress (\s a -> s { _eCSTaskDefinitionHostEntryIpAddress = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionSystemControl.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionSystemControl.hs
--- a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionSystemControl.hs
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionSystemControl.hs
@@ -14,34 +14,32 @@
 -- 'ecsTaskDefinitionSystemControl' for a more convenient constructor.
 data ECSTaskDefinitionSystemControl =
   ECSTaskDefinitionSystemControl
-  { _eCSTaskDefinitionSystemControlNamespace :: Val Text
-  , _eCSTaskDefinitionSystemControlValue :: Val Text
+  { _eCSTaskDefinitionSystemControlNamespace :: Maybe (Val Text)
+  , _eCSTaskDefinitionSystemControlValue :: Maybe (Val Text)
   } deriving (Show, Eq)
 
 instance ToJSON ECSTaskDefinitionSystemControl where
   toJSON ECSTaskDefinitionSystemControl{..} =
     object $
     catMaybes
-    [ (Just . ("Namespace",) . toJSON) _eCSTaskDefinitionSystemControlNamespace
-    , (Just . ("Value",) . toJSON) _eCSTaskDefinitionSystemControlValue
+    [ fmap (("Namespace",) . toJSON) _eCSTaskDefinitionSystemControlNamespace
+    , fmap (("Value",) . toJSON) _eCSTaskDefinitionSystemControlValue
     ]
 
 -- | Constructor for 'ECSTaskDefinitionSystemControl' containing required
 -- fields as arguments.
 ecsTaskDefinitionSystemControl
-  :: Val Text -- ^ 'ecstdscNamespace'
-  -> Val Text -- ^ 'ecstdscValue'
-  -> ECSTaskDefinitionSystemControl
-ecsTaskDefinitionSystemControl namespacearg valuearg =
+  :: ECSTaskDefinitionSystemControl
+ecsTaskDefinitionSystemControl  =
   ECSTaskDefinitionSystemControl
-  { _eCSTaskDefinitionSystemControlNamespace = namespacearg
-  , _eCSTaskDefinitionSystemControlValue = valuearg
+  { _eCSTaskDefinitionSystemControlNamespace = Nothing
+  , _eCSTaskDefinitionSystemControlValue = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html#cfn-ecs-taskdefinition-systemcontrol-namespace
-ecstdscNamespace :: Lens' ECSTaskDefinitionSystemControl (Val Text)
+ecstdscNamespace :: Lens' ECSTaskDefinitionSystemControl (Maybe (Val Text))
 ecstdscNamespace = lens _eCSTaskDefinitionSystemControlNamespace (\s a -> s { _eCSTaskDefinitionSystemControlNamespace = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-systemcontrol.html#cfn-ecs-taskdefinition-systemcontrol-value
-ecstdscValue :: Lens' ECSTaskDefinitionSystemControl (Val Text)
+ecstdscValue :: Lens' ECSTaskDefinitionSystemControl (Maybe (Val Text))
 ecstdscValue = lens _eCSTaskDefinitionSystemControlValue (\s a -> s { _eCSTaskDefinitionSystemControlValue = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/EFSFileSystemBackupPolicy.hs b/library-gen/Stratosphere/ResourceProperties/EFSFileSystemBackupPolicy.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/EFSFileSystemBackupPolicy.hs
@@ -0,0 +1,39 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-backuppolicy.html
+
+module Stratosphere.ResourceProperties.EFSFileSystemBackupPolicy where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for EFSFileSystemBackupPolicy. See
+-- 'efsFileSystemBackupPolicy' for a more convenient constructor.
+data EFSFileSystemBackupPolicy =
+  EFSFileSystemBackupPolicy
+  { _eFSFileSystemBackupPolicyStatus :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON EFSFileSystemBackupPolicy where
+  toJSON EFSFileSystemBackupPolicy{..} =
+    object $
+    catMaybes
+    [ (Just . ("Status",) . toJSON) _eFSFileSystemBackupPolicyStatus
+    ]
+
+-- | Constructor for 'EFSFileSystemBackupPolicy' containing required fields as
+-- arguments.
+efsFileSystemBackupPolicy
+  :: Val Text -- ^ 'efsfsbpStatus'
+  -> EFSFileSystemBackupPolicy
+efsFileSystemBackupPolicy statusarg =
+  EFSFileSystemBackupPolicy
+  { _eFSFileSystemBackupPolicyStatus = statusarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-backuppolicy.html#cfn-efs-filesystem-backuppolicy-status
+efsfsbpStatus :: Lens' EFSFileSystemBackupPolicy (Val Text)
+efsfsbpStatus = lens _eFSFileSystemBackupPolicyStatus (\s a -> s { _eFSFileSystemBackupPolicyStatus = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainAdvancedSecurityOptionsInput.hs b/library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainAdvancedSecurityOptionsInput.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainAdvancedSecurityOptionsInput.hs
@@ -0,0 +1,54 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html
+
+module Stratosphere.ResourceProperties.ElasticsearchDomainAdvancedSecurityOptionsInput where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ElasticsearchDomainMasterUserOptions
+
+-- | Full data type definition for
+-- ElasticsearchDomainAdvancedSecurityOptionsInput. See
+-- 'elasticsearchDomainAdvancedSecurityOptionsInput' for a more convenient
+-- constructor.
+data ElasticsearchDomainAdvancedSecurityOptionsInput =
+  ElasticsearchDomainAdvancedSecurityOptionsInput
+  { _elasticsearchDomainAdvancedSecurityOptionsInputEnabled :: Maybe (Val Bool)
+  , _elasticsearchDomainAdvancedSecurityOptionsInputInternalUserDatabaseEnabled :: Maybe (Val Bool)
+  , _elasticsearchDomainAdvancedSecurityOptionsInputMasterUserOptions :: Maybe ElasticsearchDomainMasterUserOptions
+  } deriving (Show, Eq)
+
+instance ToJSON ElasticsearchDomainAdvancedSecurityOptionsInput where
+  toJSON ElasticsearchDomainAdvancedSecurityOptionsInput{..} =
+    object $
+    catMaybes
+    [ fmap (("Enabled",) . toJSON) _elasticsearchDomainAdvancedSecurityOptionsInputEnabled
+    , fmap (("InternalUserDatabaseEnabled",) . toJSON) _elasticsearchDomainAdvancedSecurityOptionsInputInternalUserDatabaseEnabled
+    , fmap (("MasterUserOptions",) . toJSON) _elasticsearchDomainAdvancedSecurityOptionsInputMasterUserOptions
+    ]
+
+-- | Constructor for 'ElasticsearchDomainAdvancedSecurityOptionsInput'
+-- containing required fields as arguments.
+elasticsearchDomainAdvancedSecurityOptionsInput
+  :: ElasticsearchDomainAdvancedSecurityOptionsInput
+elasticsearchDomainAdvancedSecurityOptionsInput  =
+  ElasticsearchDomainAdvancedSecurityOptionsInput
+  { _elasticsearchDomainAdvancedSecurityOptionsInputEnabled = Nothing
+  , _elasticsearchDomainAdvancedSecurityOptionsInputInternalUserDatabaseEnabled = Nothing
+  , _elasticsearchDomainAdvancedSecurityOptionsInputMasterUserOptions = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html#cfn-elasticsearch-domain-advancedsecurityoptionsinput-enabled
+edasoiEnabled :: Lens' ElasticsearchDomainAdvancedSecurityOptionsInput (Maybe (Val Bool))
+edasoiEnabled = lens _elasticsearchDomainAdvancedSecurityOptionsInputEnabled (\s a -> s { _elasticsearchDomainAdvancedSecurityOptionsInputEnabled = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html#cfn-elasticsearch-domain-advancedsecurityoptionsinput-internaluserdatabaseenabled
+edasoiInternalUserDatabaseEnabled :: Lens' ElasticsearchDomainAdvancedSecurityOptionsInput (Maybe (Val Bool))
+edasoiInternalUserDatabaseEnabled = lens _elasticsearchDomainAdvancedSecurityOptionsInputInternalUserDatabaseEnabled (\s a -> s { _elasticsearchDomainAdvancedSecurityOptionsInputInternalUserDatabaseEnabled = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-advancedsecurityoptionsinput.html#cfn-elasticsearch-domain-advancedsecurityoptionsinput-masteruseroptions
+edasoiMasterUserOptions :: Lens' ElasticsearchDomainAdvancedSecurityOptionsInput (Maybe ElasticsearchDomainMasterUserOptions)
+edasoiMasterUserOptions = lens _elasticsearchDomainAdvancedSecurityOptionsInputMasterUserOptions (\s a -> s { _elasticsearchDomainAdvancedSecurityOptionsInputMasterUserOptions = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainDomainEndpointOptions.hs b/library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainDomainEndpointOptions.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainDomainEndpointOptions.hs
@@ -0,0 +1,46 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html
+
+module Stratosphere.ResourceProperties.ElasticsearchDomainDomainEndpointOptions where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ElasticsearchDomainDomainEndpointOptions.
+-- See 'elasticsearchDomainDomainEndpointOptions' for a more convenient
+-- constructor.
+data ElasticsearchDomainDomainEndpointOptions =
+  ElasticsearchDomainDomainEndpointOptions
+  { _elasticsearchDomainDomainEndpointOptionsEnforceHTTPS :: Maybe (Val Bool)
+  , _elasticsearchDomainDomainEndpointOptionsTLSSecurityPolicy :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON ElasticsearchDomainDomainEndpointOptions where
+  toJSON ElasticsearchDomainDomainEndpointOptions{..} =
+    object $
+    catMaybes
+    [ fmap (("EnforceHTTPS",) . toJSON) _elasticsearchDomainDomainEndpointOptionsEnforceHTTPS
+    , fmap (("TLSSecurityPolicy",) . toJSON) _elasticsearchDomainDomainEndpointOptionsTLSSecurityPolicy
+    ]
+
+-- | Constructor for 'ElasticsearchDomainDomainEndpointOptions' containing
+-- required fields as arguments.
+elasticsearchDomainDomainEndpointOptions
+  :: ElasticsearchDomainDomainEndpointOptions
+elasticsearchDomainDomainEndpointOptions  =
+  ElasticsearchDomainDomainEndpointOptions
+  { _elasticsearchDomainDomainEndpointOptionsEnforceHTTPS = Nothing
+  , _elasticsearchDomainDomainEndpointOptionsTLSSecurityPolicy = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-enforcehttps
+eddeoEnforceHTTPS :: Lens' ElasticsearchDomainDomainEndpointOptions (Maybe (Val Bool))
+eddeoEnforceHTTPS = lens _elasticsearchDomainDomainEndpointOptionsEnforceHTTPS (\s a -> s { _elasticsearchDomainDomainEndpointOptionsEnforceHTTPS = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-domainendpointoptions.html#cfn-elasticsearch-domain-domainendpointoptions-tlssecuritypolicy
+eddeoTLSSecurityPolicy :: Lens' ElasticsearchDomainDomainEndpointOptions (Maybe (Val Text))
+eddeoTLSSecurityPolicy = lens _elasticsearchDomainDomainEndpointOptionsTLSSecurityPolicy (\s a -> s { _elasticsearchDomainDomainEndpointOptionsTLSSecurityPolicy = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainMasterUserOptions.hs b/library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainMasterUserOptions.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainMasterUserOptions.hs
@@ -0,0 +1,52 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html
+
+module Stratosphere.ResourceProperties.ElasticsearchDomainMasterUserOptions where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ElasticsearchDomainMasterUserOptions. See
+-- 'elasticsearchDomainMasterUserOptions' for a more convenient constructor.
+data ElasticsearchDomainMasterUserOptions =
+  ElasticsearchDomainMasterUserOptions
+  { _elasticsearchDomainMasterUserOptionsMasterUserARN :: Maybe (Val Text)
+  , _elasticsearchDomainMasterUserOptionsMasterUserName :: Maybe (Val Text)
+  , _elasticsearchDomainMasterUserOptionsMasterUserPassword :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON ElasticsearchDomainMasterUserOptions where
+  toJSON ElasticsearchDomainMasterUserOptions{..} =
+    object $
+    catMaybes
+    [ fmap (("MasterUserARN",) . toJSON) _elasticsearchDomainMasterUserOptionsMasterUserARN
+    , fmap (("MasterUserName",) . toJSON) _elasticsearchDomainMasterUserOptionsMasterUserName
+    , fmap (("MasterUserPassword",) . toJSON) _elasticsearchDomainMasterUserOptionsMasterUserPassword
+    ]
+
+-- | Constructor for 'ElasticsearchDomainMasterUserOptions' containing
+-- required fields as arguments.
+elasticsearchDomainMasterUserOptions
+  :: ElasticsearchDomainMasterUserOptions
+elasticsearchDomainMasterUserOptions  =
+  ElasticsearchDomainMasterUserOptions
+  { _elasticsearchDomainMasterUserOptionsMasterUserARN = Nothing
+  , _elasticsearchDomainMasterUserOptionsMasterUserName = Nothing
+  , _elasticsearchDomainMasterUserOptionsMasterUserPassword = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html#cfn-elasticsearch-domain-masteruseroptions-masteruserarn
+edmuoMasterUserARN :: Lens' ElasticsearchDomainMasterUserOptions (Maybe (Val Text))
+edmuoMasterUserARN = lens _elasticsearchDomainMasterUserOptionsMasterUserARN (\s a -> s { _elasticsearchDomainMasterUserOptionsMasterUserARN = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html#cfn-elasticsearch-domain-masteruseroptions-masterusername
+edmuoMasterUserName :: Lens' ElasticsearchDomainMasterUserOptions (Maybe (Val Text))
+edmuoMasterUserName = lens _elasticsearchDomainMasterUserOptionsMasterUserName (\s a -> s { _elasticsearchDomainMasterUserOptionsMasterUserName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-masteruseroptions.html#cfn-elasticsearch-domain-masteruseroptions-masteruserpassword
+edmuoMasterUserPassword :: Lens' ElasticsearchDomainMasterUserOptions (Maybe (Val Text))
+edmuoMasterUserPassword = lens _elasticsearchDomainMasterUserOptionsMasterUserPassword (\s a -> s { _elasticsearchDomainMasterUserOptionsMasterUserPassword = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/FMSPolicyIEMap.hs b/library-gen/Stratosphere/ResourceProperties/FMSPolicyIEMap.hs
--- a/library-gen/Stratosphere/ResourceProperties/FMSPolicyIEMap.hs
+++ b/library-gen/Stratosphere/ResourceProperties/FMSPolicyIEMap.hs
@@ -15,6 +15,7 @@
 data FMSPolicyIEMap =
   FMSPolicyIEMap
   { _fMSPolicyIEMapACCOUNT :: Maybe (ValList Text)
+  , _fMSPolicyIEMapORGUNIT :: Maybe (ValList Text)
   } deriving (Show, Eq)
 
 instance ToJSON FMSPolicyIEMap where
@@ -22,6 +23,7 @@
     object $
     catMaybes
     [ fmap (("ACCOUNT",) . toJSON) _fMSPolicyIEMapACCOUNT
+    , fmap (("ORGUNIT",) . toJSON) _fMSPolicyIEMapORGUNIT
     ]
 
 -- | Constructor for 'FMSPolicyIEMap' containing required fields as arguments.
@@ -30,8 +32,13 @@
 fmsPolicyIEMap  =
   FMSPolicyIEMap
   { _fMSPolicyIEMapACCOUNT = Nothing
+  , _fMSPolicyIEMapORGUNIT = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-iemap.html#cfn-fms-policy-iemap-account
 fmspiemACCOUNT :: Lens' FMSPolicyIEMap (Maybe (ValList Text))
 fmspiemACCOUNT = lens _fMSPolicyIEMapACCOUNT (\s a -> s { _fMSPolicyIEMapACCOUNT = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fms-policy-iemap.html#cfn-fms-policy-iemap-orgunit
+fmspiemORGUNIT :: Lens' FMSPolicyIEMap (Maybe (ValList Text))
+fmspiemORGUNIT = lens _fMSPolicyIEMapORGUNIT (\s a -> s { _fMSPolicyIEMapORGUNIT = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/FSxFileSystemLustreConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/FSxFileSystemLustreConfiguration.hs
--- a/library-gen/Stratosphere/ResourceProperties/FSxFileSystemLustreConfiguration.hs
+++ b/library-gen/Stratosphere/ResourceProperties/FSxFileSystemLustreConfiguration.hs
@@ -14,7 +14,10 @@
 -- 'fSxFileSystemLustreConfiguration' for a more convenient constructor.
 data FSxFileSystemLustreConfiguration =
   FSxFileSystemLustreConfiguration
-  { _fSxFileSystemLustreConfigurationDeploymentType :: Maybe (Val Text)
+  { _fSxFileSystemLustreConfigurationAutomaticBackupRetentionDays :: Maybe (Val Integer)
+  , _fSxFileSystemLustreConfigurationCopyTagsToBackups :: Maybe (Val Bool)
+  , _fSxFileSystemLustreConfigurationDailyAutomaticBackupStartTime :: Maybe (Val Text)
+  , _fSxFileSystemLustreConfigurationDeploymentType :: Maybe (Val Text)
   , _fSxFileSystemLustreConfigurationExportPath :: Maybe (Val Text)
   , _fSxFileSystemLustreConfigurationImportPath :: Maybe (Val Text)
   , _fSxFileSystemLustreConfigurationImportedFileChunkSize :: Maybe (Val Integer)
@@ -26,7 +29,10 @@
   toJSON FSxFileSystemLustreConfiguration{..} =
     object $
     catMaybes
-    [ fmap (("DeploymentType",) . toJSON) _fSxFileSystemLustreConfigurationDeploymentType
+    [ fmap (("AutomaticBackupRetentionDays",) . toJSON) _fSxFileSystemLustreConfigurationAutomaticBackupRetentionDays
+    , fmap (("CopyTagsToBackups",) . toJSON) _fSxFileSystemLustreConfigurationCopyTagsToBackups
+    , fmap (("DailyAutomaticBackupStartTime",) . toJSON) _fSxFileSystemLustreConfigurationDailyAutomaticBackupStartTime
+    , fmap (("DeploymentType",) . toJSON) _fSxFileSystemLustreConfigurationDeploymentType
     , fmap (("ExportPath",) . toJSON) _fSxFileSystemLustreConfigurationExportPath
     , fmap (("ImportPath",) . toJSON) _fSxFileSystemLustreConfigurationImportPath
     , fmap (("ImportedFileChunkSize",) . toJSON) _fSxFileSystemLustreConfigurationImportedFileChunkSize
@@ -40,13 +46,28 @@
   :: FSxFileSystemLustreConfiguration
 fSxFileSystemLustreConfiguration  =
   FSxFileSystemLustreConfiguration
-  { _fSxFileSystemLustreConfigurationDeploymentType = Nothing
+  { _fSxFileSystemLustreConfigurationAutomaticBackupRetentionDays = Nothing
+  , _fSxFileSystemLustreConfigurationCopyTagsToBackups = Nothing
+  , _fSxFileSystemLustreConfigurationDailyAutomaticBackupStartTime = Nothing
+  , _fSxFileSystemLustreConfigurationDeploymentType = Nothing
   , _fSxFileSystemLustreConfigurationExportPath = Nothing
   , _fSxFileSystemLustreConfigurationImportPath = Nothing
   , _fSxFileSystemLustreConfigurationImportedFileChunkSize = Nothing
   , _fSxFileSystemLustreConfigurationPerUnitStorageThroughput = Nothing
   , _fSxFileSystemLustreConfigurationWeeklyMaintenanceStartTime = Nothing
   }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-automaticbackupretentiondays
+fsfslcAutomaticBackupRetentionDays :: Lens' FSxFileSystemLustreConfiguration (Maybe (Val Integer))
+fsfslcAutomaticBackupRetentionDays = lens _fSxFileSystemLustreConfigurationAutomaticBackupRetentionDays (\s a -> s { _fSxFileSystemLustreConfigurationAutomaticBackupRetentionDays = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-copytagstobackups
+fsfslcCopyTagsToBackups :: Lens' FSxFileSystemLustreConfiguration (Maybe (Val Bool))
+fsfslcCopyTagsToBackups = lens _fSxFileSystemLustreConfigurationCopyTagsToBackups (\s a -> s { _fSxFileSystemLustreConfigurationCopyTagsToBackups = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-dailyautomaticbackupstarttime
+fsfslcDailyAutomaticBackupStartTime :: Lens' FSxFileSystemLustreConfiguration (Maybe (Val Text))
+fsfslcDailyAutomaticBackupStartTime = lens _fSxFileSystemLustreConfigurationDailyAutomaticBackupStartTime (\s a -> s { _fSxFileSystemLustreConfigurationDailyAutomaticBackupStartTime = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-deploymenttype
 fsfslcDeploymentType :: Lens' FSxFileSystemLustreConfiguration (Maybe (Val Text))
diff --git a/library-gen/Stratosphere/ResourceProperties/ImageBuilderDistributionConfigurationDistribution.hs b/library-gen/Stratosphere/ResourceProperties/ImageBuilderDistributionConfigurationDistribution.hs
--- a/library-gen/Stratosphere/ResourceProperties/ImageBuilderDistributionConfigurationDistribution.hs
+++ b/library-gen/Stratosphere/ResourceProperties/ImageBuilderDistributionConfigurationDistribution.hs
@@ -18,7 +18,7 @@
   ImageBuilderDistributionConfigurationDistribution
   { _imageBuilderDistributionConfigurationDistributionAmiDistributionConfiguration :: Maybe Object
   , _imageBuilderDistributionConfigurationDistributionLicenseConfigurationArns :: Maybe (ValList Text)
-  , _imageBuilderDistributionConfigurationDistributionRegion :: Maybe (Val Text)
+  , _imageBuilderDistributionConfigurationDistributionRegion :: Val Text
   } deriving (Show, Eq)
 
 instance ToJSON ImageBuilderDistributionConfigurationDistribution where
@@ -27,18 +27,19 @@
     catMaybes
     [ fmap (("AmiDistributionConfiguration",) . toJSON) _imageBuilderDistributionConfigurationDistributionAmiDistributionConfiguration
     , fmap (("LicenseConfigurationArns",) . toJSON) _imageBuilderDistributionConfigurationDistributionLicenseConfigurationArns
-    , fmap (("Region",) . toJSON) _imageBuilderDistributionConfigurationDistributionRegion
+    , (Just . ("Region",) . toJSON) _imageBuilderDistributionConfigurationDistributionRegion
     ]
 
 -- | Constructor for 'ImageBuilderDistributionConfigurationDistribution'
 -- containing required fields as arguments.
 imageBuilderDistributionConfigurationDistribution
-  :: ImageBuilderDistributionConfigurationDistribution
-imageBuilderDistributionConfigurationDistribution  =
+  :: Val Text -- ^ 'ibdcdRegion'
+  -> ImageBuilderDistributionConfigurationDistribution
+imageBuilderDistributionConfigurationDistribution regionarg =
   ImageBuilderDistributionConfigurationDistribution
   { _imageBuilderDistributionConfigurationDistributionAmiDistributionConfiguration = Nothing
   , _imageBuilderDistributionConfigurationDistributionLicenseConfigurationArns = Nothing
-  , _imageBuilderDistributionConfigurationDistributionRegion = Nothing
+  , _imageBuilderDistributionConfigurationDistributionRegion = regionarg
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-distributionconfiguration-distribution.html#cfn-imagebuilder-distributionconfiguration-distribution-amidistributionconfiguration
@@ -50,5 +51,5 @@
 ibdcdLicenseConfigurationArns = lens _imageBuilderDistributionConfigurationDistributionLicenseConfigurationArns (\s a -> s { _imageBuilderDistributionConfigurationDistributionLicenseConfigurationArns = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-imagebuilder-distributionconfiguration-distribution.html#cfn-imagebuilder-distributionconfiguration-distribution-region
-ibdcdRegion :: Lens' ImageBuilderDistributionConfigurationDistribution (Maybe (Val Text))
+ibdcdRegion :: Lens' ImageBuilderDistributionConfigurationDistribution (Val Text)
 ibdcdRegion = lens _imageBuilderDistributionConfigurationDistributionRegion (\s a -> s { _imageBuilderDistributionConfigurationDistributionRegion = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/LambdaFunctionFileSystemConfig.hs b/library-gen/Stratosphere/ResourceProperties/LambdaFunctionFileSystemConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/LambdaFunctionFileSystemConfig.hs
@@ -0,0 +1,47 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-filesystemconfig.html
+
+module Stratosphere.ResourceProperties.LambdaFunctionFileSystemConfig where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for LambdaFunctionFileSystemConfig. See
+-- 'lambdaFunctionFileSystemConfig' for a more convenient constructor.
+data LambdaFunctionFileSystemConfig =
+  LambdaFunctionFileSystemConfig
+  { _lambdaFunctionFileSystemConfigArn :: Val Text
+  , _lambdaFunctionFileSystemConfigLocalMountPath :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON LambdaFunctionFileSystemConfig where
+  toJSON LambdaFunctionFileSystemConfig{..} =
+    object $
+    catMaybes
+    [ (Just . ("Arn",) . toJSON) _lambdaFunctionFileSystemConfigArn
+    , (Just . ("LocalMountPath",) . toJSON) _lambdaFunctionFileSystemConfigLocalMountPath
+    ]
+
+-- | Constructor for 'LambdaFunctionFileSystemConfig' containing required
+-- fields as arguments.
+lambdaFunctionFileSystemConfig
+  :: Val Text -- ^ 'lffscArn'
+  -> Val Text -- ^ 'lffscLocalMountPath'
+  -> LambdaFunctionFileSystemConfig
+lambdaFunctionFileSystemConfig arnarg localMountPatharg =
+  LambdaFunctionFileSystemConfig
+  { _lambdaFunctionFileSystemConfigArn = arnarg
+  , _lambdaFunctionFileSystemConfigLocalMountPath = localMountPatharg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-filesystemconfig.html#cfn-lambda-function-filesystemconfig-arn
+lffscArn :: Lens' LambdaFunctionFileSystemConfig (Val Text)
+lffscArn = lens _lambdaFunctionFileSystemConfigArn (\s a -> s { _lambdaFunctionFileSystemConfigArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-filesystemconfig.html#cfn-lambda-function-filesystemconfig-localmountpath
+lffscLocalMountPath :: Lens' LambdaFunctionFileSystemConfig (Val Text)
+lffscLocalMountPath = lens _lambdaFunctionFileSystemConfigLocalMountPath (\s a -> s { _lambdaFunctionFileSystemConfigLocalMountPath = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/QLDBStreamKinesisConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/QLDBStreamKinesisConfiguration.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/QLDBStreamKinesisConfiguration.hs
@@ -0,0 +1,45 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qldb-stream-kinesisconfiguration.html
+
+module Stratosphere.ResourceProperties.QLDBStreamKinesisConfiguration where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for QLDBStreamKinesisConfiguration. See
+-- 'qldbStreamKinesisConfiguration' for a more convenient constructor.
+data QLDBStreamKinesisConfiguration =
+  QLDBStreamKinesisConfiguration
+  { _qLDBStreamKinesisConfigurationAggregationEnabled :: Maybe (Val Bool)
+  , _qLDBStreamKinesisConfigurationStreamArn :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON QLDBStreamKinesisConfiguration where
+  toJSON QLDBStreamKinesisConfiguration{..} =
+    object $
+    catMaybes
+    [ fmap (("AggregationEnabled",) . toJSON) _qLDBStreamKinesisConfigurationAggregationEnabled
+    , fmap (("StreamArn",) . toJSON) _qLDBStreamKinesisConfigurationStreamArn
+    ]
+
+-- | Constructor for 'QLDBStreamKinesisConfiguration' containing required
+-- fields as arguments.
+qldbStreamKinesisConfiguration
+  :: QLDBStreamKinesisConfiguration
+qldbStreamKinesisConfiguration  =
+  QLDBStreamKinesisConfiguration
+  { _qLDBStreamKinesisConfigurationAggregationEnabled = Nothing
+  , _qLDBStreamKinesisConfigurationStreamArn = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qldb-stream-kinesisconfiguration.html#cfn-qldb-stream-kinesisconfiguration-aggregationenabled
+qldbskcAggregationEnabled :: Lens' QLDBStreamKinesisConfiguration (Maybe (Val Bool))
+qldbskcAggregationEnabled = lens _qLDBStreamKinesisConfigurationAggregationEnabled (\s a -> s { _qLDBStreamKinesisConfigurationAggregationEnabled = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qldb-stream-kinesisconfiguration.html#cfn-qldb-stream-kinesisconfiguration-streamarn
+qldbskcStreamArn :: Lens' QLDBStreamKinesisConfiguration (Maybe (Val Text))
+qldbskcStreamArn = lens _qLDBStreamKinesisConfigurationStreamArn (\s a -> s { _qLDBStreamKinesisConfigurationStreamArn = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerEndpointConfigCaptureContentTypeHeader.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerEndpointConfigCaptureContentTypeHeader.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerEndpointConfigCaptureContentTypeHeader.hs
@@ -0,0 +1,47 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-datacaptureconfig-capturecontenttypeheader.html
+
+module Stratosphere.ResourceProperties.SageMakerEndpointConfigCaptureContentTypeHeader where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- SageMakerEndpointConfigCaptureContentTypeHeader. See
+-- 'sageMakerEndpointConfigCaptureContentTypeHeader' for a more convenient
+-- constructor.
+data SageMakerEndpointConfigCaptureContentTypeHeader =
+  SageMakerEndpointConfigCaptureContentTypeHeader
+  { _sageMakerEndpointConfigCaptureContentTypeHeaderCsvContentTypes :: Maybe (ValList Text)
+  , _sageMakerEndpointConfigCaptureContentTypeHeaderJsonContentTypes :: Maybe (ValList Text)
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerEndpointConfigCaptureContentTypeHeader where
+  toJSON SageMakerEndpointConfigCaptureContentTypeHeader{..} =
+    object $
+    catMaybes
+    [ fmap (("CsvContentTypes",) . toJSON) _sageMakerEndpointConfigCaptureContentTypeHeaderCsvContentTypes
+    , fmap (("JsonContentTypes",) . toJSON) _sageMakerEndpointConfigCaptureContentTypeHeaderJsonContentTypes
+    ]
+
+-- | Constructor for 'SageMakerEndpointConfigCaptureContentTypeHeader'
+-- containing required fields as arguments.
+sageMakerEndpointConfigCaptureContentTypeHeader
+  :: SageMakerEndpointConfigCaptureContentTypeHeader
+sageMakerEndpointConfigCaptureContentTypeHeader  =
+  SageMakerEndpointConfigCaptureContentTypeHeader
+  { _sageMakerEndpointConfigCaptureContentTypeHeaderCsvContentTypes = Nothing
+  , _sageMakerEndpointConfigCaptureContentTypeHeaderJsonContentTypes = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-datacaptureconfig-capturecontenttypeheader.html#cfn-sagemaker-endpointconfig-datacaptureconfig-capturecontenttypeheader-csvcontenttypes
+smecccthCsvContentTypes :: Lens' SageMakerEndpointConfigCaptureContentTypeHeader (Maybe (ValList Text))
+smecccthCsvContentTypes = lens _sageMakerEndpointConfigCaptureContentTypeHeaderCsvContentTypes (\s a -> s { _sageMakerEndpointConfigCaptureContentTypeHeaderCsvContentTypes = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-datacaptureconfig-capturecontenttypeheader.html#cfn-sagemaker-endpointconfig-datacaptureconfig-capturecontenttypeheader-jsoncontenttypes
+smecccthJsonContentTypes :: Lens' SageMakerEndpointConfigCaptureContentTypeHeader (Maybe (ValList Text))
+smecccthJsonContentTypes = lens _sageMakerEndpointConfigCaptureContentTypeHeaderJsonContentTypes (\s a -> s { _sageMakerEndpointConfigCaptureContentTypeHeaderJsonContentTypes = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerEndpointConfigCaptureOption.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerEndpointConfigCaptureOption.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerEndpointConfigCaptureOption.hs
@@ -0,0 +1,39 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-captureoption.html
+
+module Stratosphere.ResourceProperties.SageMakerEndpointConfigCaptureOption where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for SageMakerEndpointConfigCaptureOption. See
+-- 'sageMakerEndpointConfigCaptureOption' for a more convenient constructor.
+data SageMakerEndpointConfigCaptureOption =
+  SageMakerEndpointConfigCaptureOption
+  { _sageMakerEndpointConfigCaptureOptionCaptureMode :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerEndpointConfigCaptureOption where
+  toJSON SageMakerEndpointConfigCaptureOption{..} =
+    object $
+    catMaybes
+    [ (Just . ("CaptureMode",) . toJSON) _sageMakerEndpointConfigCaptureOptionCaptureMode
+    ]
+
+-- | Constructor for 'SageMakerEndpointConfigCaptureOption' containing
+-- required fields as arguments.
+sageMakerEndpointConfigCaptureOption
+  :: Val Text -- ^ 'smeccoCaptureMode'
+  -> SageMakerEndpointConfigCaptureOption
+sageMakerEndpointConfigCaptureOption captureModearg =
+  SageMakerEndpointConfigCaptureOption
+  { _sageMakerEndpointConfigCaptureOptionCaptureMode = captureModearg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-captureoption.html#cfn-sagemaker-endpointconfig-captureoption-capturemode
+smeccoCaptureMode :: Lens' SageMakerEndpointConfigCaptureOption (Val Text)
+smeccoCaptureMode = lens _sageMakerEndpointConfigCaptureOptionCaptureMode (\s a -> s { _sageMakerEndpointConfigCaptureOptionCaptureMode = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerEndpointConfigDataCaptureConfig.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerEndpointConfigDataCaptureConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerEndpointConfigDataCaptureConfig.hs
@@ -0,0 +1,78 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-datacaptureconfig.html
+
+module Stratosphere.ResourceProperties.SageMakerEndpointConfigDataCaptureConfig where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerEndpointConfigCaptureContentTypeHeader
+import Stratosphere.ResourceProperties.SageMakerEndpointConfigCaptureOption
+
+-- | Full data type definition for SageMakerEndpointConfigDataCaptureConfig.
+-- See 'sageMakerEndpointConfigDataCaptureConfig' for a more convenient
+-- constructor.
+data SageMakerEndpointConfigDataCaptureConfig =
+  SageMakerEndpointConfigDataCaptureConfig
+  { _sageMakerEndpointConfigDataCaptureConfigCaptureContentTypeHeader :: Maybe SageMakerEndpointConfigCaptureContentTypeHeader
+  , _sageMakerEndpointConfigDataCaptureConfigCaptureOptions :: [SageMakerEndpointConfigCaptureOption]
+  , _sageMakerEndpointConfigDataCaptureConfigDestinationS3Uri :: Val Text
+  , _sageMakerEndpointConfigDataCaptureConfigEnableCapture :: Maybe (Val Bool)
+  , _sageMakerEndpointConfigDataCaptureConfigInitialSamplingPercentage :: Val Integer
+  , _sageMakerEndpointConfigDataCaptureConfigKmsKeyId :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerEndpointConfigDataCaptureConfig where
+  toJSON SageMakerEndpointConfigDataCaptureConfig{..} =
+    object $
+    catMaybes
+    [ fmap (("CaptureContentTypeHeader",) . toJSON) _sageMakerEndpointConfigDataCaptureConfigCaptureContentTypeHeader
+    , (Just . ("CaptureOptions",) . toJSON) _sageMakerEndpointConfigDataCaptureConfigCaptureOptions
+    , (Just . ("DestinationS3Uri",) . toJSON) _sageMakerEndpointConfigDataCaptureConfigDestinationS3Uri
+    , fmap (("EnableCapture",) . toJSON) _sageMakerEndpointConfigDataCaptureConfigEnableCapture
+    , (Just . ("InitialSamplingPercentage",) . toJSON) _sageMakerEndpointConfigDataCaptureConfigInitialSamplingPercentage
+    , fmap (("KmsKeyId",) . toJSON) _sageMakerEndpointConfigDataCaptureConfigKmsKeyId
+    ]
+
+-- | Constructor for 'SageMakerEndpointConfigDataCaptureConfig' containing
+-- required fields as arguments.
+sageMakerEndpointConfigDataCaptureConfig
+  :: [SageMakerEndpointConfigCaptureOption] -- ^ 'smecdccCaptureOptions'
+  -> Val Text -- ^ 'smecdccDestinationS3Uri'
+  -> Val Integer -- ^ 'smecdccInitialSamplingPercentage'
+  -> SageMakerEndpointConfigDataCaptureConfig
+sageMakerEndpointConfigDataCaptureConfig captureOptionsarg destinationS3Uriarg initialSamplingPercentagearg =
+  SageMakerEndpointConfigDataCaptureConfig
+  { _sageMakerEndpointConfigDataCaptureConfigCaptureContentTypeHeader = Nothing
+  , _sageMakerEndpointConfigDataCaptureConfigCaptureOptions = captureOptionsarg
+  , _sageMakerEndpointConfigDataCaptureConfigDestinationS3Uri = destinationS3Uriarg
+  , _sageMakerEndpointConfigDataCaptureConfigEnableCapture = Nothing
+  , _sageMakerEndpointConfigDataCaptureConfigInitialSamplingPercentage = initialSamplingPercentagearg
+  , _sageMakerEndpointConfigDataCaptureConfigKmsKeyId = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-datacaptureconfig.html#cfn-sagemaker-endpointconfig-datacaptureconfig-capturecontenttypeheader
+smecdccCaptureContentTypeHeader :: Lens' SageMakerEndpointConfigDataCaptureConfig (Maybe SageMakerEndpointConfigCaptureContentTypeHeader)
+smecdccCaptureContentTypeHeader = lens _sageMakerEndpointConfigDataCaptureConfigCaptureContentTypeHeader (\s a -> s { _sageMakerEndpointConfigDataCaptureConfigCaptureContentTypeHeader = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-datacaptureconfig.html#cfn-sagemaker-endpointconfig-datacaptureconfig-captureoptions
+smecdccCaptureOptions :: Lens' SageMakerEndpointConfigDataCaptureConfig [SageMakerEndpointConfigCaptureOption]
+smecdccCaptureOptions = lens _sageMakerEndpointConfigDataCaptureConfigCaptureOptions (\s a -> s { _sageMakerEndpointConfigDataCaptureConfigCaptureOptions = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-datacaptureconfig.html#cfn-sagemaker-endpointconfig-datacaptureconfig-destinations3uri
+smecdccDestinationS3Uri :: Lens' SageMakerEndpointConfigDataCaptureConfig (Val Text)
+smecdccDestinationS3Uri = lens _sageMakerEndpointConfigDataCaptureConfigDestinationS3Uri (\s a -> s { _sageMakerEndpointConfigDataCaptureConfigDestinationS3Uri = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-datacaptureconfig.html#cfn-sagemaker-endpointconfig-datacaptureconfig-enablecapture
+smecdccEnableCapture :: Lens' SageMakerEndpointConfigDataCaptureConfig (Maybe (Val Bool))
+smecdccEnableCapture = lens _sageMakerEndpointConfigDataCaptureConfigEnableCapture (\s a -> s { _sageMakerEndpointConfigDataCaptureConfigEnableCapture = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-datacaptureconfig.html#cfn-sagemaker-endpointconfig-datacaptureconfig-initialsamplingpercentage
+smecdccInitialSamplingPercentage :: Lens' SageMakerEndpointConfigDataCaptureConfig (Val Integer)
+smecdccInitialSamplingPercentage = lens _sageMakerEndpointConfigDataCaptureConfigInitialSamplingPercentage (\s a -> s { _sageMakerEndpointConfigDataCaptureConfigInitialSamplingPercentage = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-datacaptureconfig.html#cfn-sagemaker-endpointconfig-datacaptureconfig-kmskeyid
+smecdccKmsKeyId :: Lens' SageMakerEndpointConfigDataCaptureConfig (Maybe (Val Text))
+smecdccKmsKeyId = lens _sageMakerEndpointConfigDataCaptureConfigKmsKeyId (\s a -> s { _sageMakerEndpointConfigDataCaptureConfigKmsKeyId = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerModelContainerDefinition.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerModelContainerDefinition.hs
--- a/library-gen/Stratosphere/ResourceProperties/SageMakerModelContainerDefinition.hs
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerModelContainerDefinition.hs
@@ -16,9 +16,10 @@
   SageMakerModelContainerDefinition
   { _sageMakerModelContainerDefinitionContainerHostname :: Maybe (Val Text)
   , _sageMakerModelContainerDefinitionEnvironment :: Maybe Object
-  , _sageMakerModelContainerDefinitionImage :: Val Text
+  , _sageMakerModelContainerDefinitionImage :: Maybe (Val Text)
   , _sageMakerModelContainerDefinitionMode :: Maybe (Val Text)
   , _sageMakerModelContainerDefinitionModelDataUrl :: Maybe (Val Text)
+  , _sageMakerModelContainerDefinitionModelPackageName :: Maybe (Val Text)
   } deriving (Show, Eq)
 
 instance ToJSON SageMakerModelContainerDefinition where
@@ -27,23 +28,24 @@
     catMaybes
     [ fmap (("ContainerHostname",) . toJSON) _sageMakerModelContainerDefinitionContainerHostname
     , fmap (("Environment",) . toJSON) _sageMakerModelContainerDefinitionEnvironment
-    , (Just . ("Image",) . toJSON) _sageMakerModelContainerDefinitionImage
+    , fmap (("Image",) . toJSON) _sageMakerModelContainerDefinitionImage
     , fmap (("Mode",) . toJSON) _sageMakerModelContainerDefinitionMode
     , fmap (("ModelDataUrl",) . toJSON) _sageMakerModelContainerDefinitionModelDataUrl
+    , fmap (("ModelPackageName",) . toJSON) _sageMakerModelContainerDefinitionModelPackageName
     ]
 
 -- | Constructor for 'SageMakerModelContainerDefinition' containing required
 -- fields as arguments.
 sageMakerModelContainerDefinition
-  :: Val Text -- ^ 'smmcdImage'
-  -> SageMakerModelContainerDefinition
-sageMakerModelContainerDefinition imagearg =
+  :: SageMakerModelContainerDefinition
+sageMakerModelContainerDefinition  =
   SageMakerModelContainerDefinition
   { _sageMakerModelContainerDefinitionContainerHostname = Nothing
   , _sageMakerModelContainerDefinitionEnvironment = Nothing
-  , _sageMakerModelContainerDefinitionImage = imagearg
+  , _sageMakerModelContainerDefinitionImage = Nothing
   , _sageMakerModelContainerDefinitionMode = Nothing
   , _sageMakerModelContainerDefinitionModelDataUrl = Nothing
+  , _sageMakerModelContainerDefinitionModelPackageName = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-containerhostname
@@ -55,7 +57,7 @@
 smmcdEnvironment = lens _sageMakerModelContainerDefinitionEnvironment (\s a -> s { _sageMakerModelContainerDefinitionEnvironment = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-image
-smmcdImage :: Lens' SageMakerModelContainerDefinition (Val Text)
+smmcdImage :: Lens' SageMakerModelContainerDefinition (Maybe (Val Text))
 smmcdImage = lens _sageMakerModelContainerDefinitionImage (\s a -> s { _sageMakerModelContainerDefinitionImage = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-mode
@@ -65,3 +67,7 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-modeldataurl
 smmcdModelDataUrl :: Lens' SageMakerModelContainerDefinition (Maybe (Val Text))
 smmcdModelDataUrl = lens _sageMakerModelContainerDefinitionModelDataUrl (\s a -> s { _sageMakerModelContainerDefinitionModelDataUrl = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-model-containerdefinition.html#cfn-sagemaker-model-containerdefinition-modelpackagename
+smmcdModelPackageName :: Lens' SageMakerModelContainerDefinition (Maybe (Val Text))
+smmcdModelPackageName = lens _sageMakerModelContainerDefinitionModelPackageName (\s a -> s { _sageMakerModelContainerDefinitionModelPackageName = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SecretsManagerRotationScheduleHostedRotationLambda.hs b/library-gen/Stratosphere/ResourceProperties/SecretsManagerRotationScheduleHostedRotationLambda.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SecretsManagerRotationScheduleHostedRotationLambda.hs
@@ -0,0 +1,83 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html
+
+module Stratosphere.ResourceProperties.SecretsManagerRotationScheduleHostedRotationLambda where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- SecretsManagerRotationScheduleHostedRotationLambda. See
+-- 'secretsManagerRotationScheduleHostedRotationLambda' for a more
+-- convenient constructor.
+data SecretsManagerRotationScheduleHostedRotationLambda =
+  SecretsManagerRotationScheduleHostedRotationLambda
+  { _secretsManagerRotationScheduleHostedRotationLambdaKmsKeyArn :: Maybe (Val Text)
+  , _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretArn :: Maybe (Val Text)
+  , _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretKmsKeyArn :: Maybe (Val Text)
+  , _secretsManagerRotationScheduleHostedRotationLambdaRotationLambdaName :: Maybe (Val Text)
+  , _secretsManagerRotationScheduleHostedRotationLambdaRotationType :: Val Text
+  , _secretsManagerRotationScheduleHostedRotationLambdaVpcSecurityGroupIds :: Maybe (Val Text)
+  , _secretsManagerRotationScheduleHostedRotationLambdaVpcSubnetIds :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON SecretsManagerRotationScheduleHostedRotationLambda where
+  toJSON SecretsManagerRotationScheduleHostedRotationLambda{..} =
+    object $
+    catMaybes
+    [ fmap (("KmsKeyArn",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaKmsKeyArn
+    , fmap (("MasterSecretArn",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretArn
+    , fmap (("MasterSecretKmsKeyArn",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretKmsKeyArn
+    , fmap (("RotationLambdaName",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaRotationLambdaName
+    , (Just . ("RotationType",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaRotationType
+    , fmap (("VpcSecurityGroupIds",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaVpcSecurityGroupIds
+    , fmap (("VpcSubnetIds",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaVpcSubnetIds
+    ]
+
+-- | Constructor for 'SecretsManagerRotationScheduleHostedRotationLambda'
+-- containing required fields as arguments.
+secretsManagerRotationScheduleHostedRotationLambda
+  :: Val Text -- ^ 'smrshrlRotationType'
+  -> SecretsManagerRotationScheduleHostedRotationLambda
+secretsManagerRotationScheduleHostedRotationLambda rotationTypearg =
+  SecretsManagerRotationScheduleHostedRotationLambda
+  { _secretsManagerRotationScheduleHostedRotationLambdaKmsKeyArn = Nothing
+  , _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretArn = Nothing
+  , _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretKmsKeyArn = Nothing
+  , _secretsManagerRotationScheduleHostedRotationLambdaRotationLambdaName = Nothing
+  , _secretsManagerRotationScheduleHostedRotationLambdaRotationType = rotationTypearg
+  , _secretsManagerRotationScheduleHostedRotationLambdaVpcSecurityGroupIds = Nothing
+  , _secretsManagerRotationScheduleHostedRotationLambdaVpcSubnetIds = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-kmskeyarn
+smrshrlKmsKeyArn :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
+smrshrlKmsKeyArn = lens _secretsManagerRotationScheduleHostedRotationLambdaKmsKeyArn (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaKmsKeyArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-mastersecretarn
+smrshrlMasterSecretArn :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
+smrshrlMasterSecretArn = lens _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretArn (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-mastersecretkmskeyarn
+smrshrlMasterSecretKmsKeyArn :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
+smrshrlMasterSecretKmsKeyArn = lens _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretKmsKeyArn (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretKmsKeyArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-rotationlambdaname
+smrshrlRotationLambdaName :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
+smrshrlRotationLambdaName = lens _secretsManagerRotationScheduleHostedRotationLambdaRotationLambdaName (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaRotationLambdaName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-rotationtype
+smrshrlRotationType :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Val Text)
+smrshrlRotationType = lens _secretsManagerRotationScheduleHostedRotationLambdaRotationType (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaRotationType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-vpcsecuritygroupids
+smrshrlVpcSecurityGroupIds :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
+smrshrlVpcSecurityGroupIds = lens _secretsManagerRotationScheduleHostedRotationLambdaVpcSecurityGroupIds (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaVpcSecurityGroupIds = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-vpcsubnetids
+smrshrlVpcSubnetIds :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
+smrshrlVpcSubnetIds = lens _secretsManagerRotationScheduleHostedRotationLambdaVpcSubnetIds (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaVpcSubnetIds = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ServiceCatalogCloudFormationProvisionedProductProvisioningParameter.hs b/library-gen/Stratosphere/ResourceProperties/ServiceCatalogCloudFormationProvisionedProductProvisioningParameter.hs
--- a/library-gen/Stratosphere/ResourceProperties/ServiceCatalogCloudFormationProvisionedProductProvisioningParameter.hs
+++ b/library-gen/Stratosphere/ResourceProperties/ServiceCatalogCloudFormationProvisionedProductProvisioningParameter.hs
@@ -16,33 +16,35 @@
 -- a more convenient constructor.
 data ServiceCatalogCloudFormationProvisionedProductProvisioningParameter =
   ServiceCatalogCloudFormationProvisionedProductProvisioningParameter
-  { _serviceCatalogCloudFormationProvisionedProductProvisioningParameterKey :: Maybe (Val Text)
-  , _serviceCatalogCloudFormationProvisionedProductProvisioningParameterValue :: Maybe (Val Text)
+  { _serviceCatalogCloudFormationProvisionedProductProvisioningParameterKey :: Val Text
+  , _serviceCatalogCloudFormationProvisionedProductProvisioningParameterValue :: Val Text
   } deriving (Show, Eq)
 
 instance ToJSON ServiceCatalogCloudFormationProvisionedProductProvisioningParameter where
   toJSON ServiceCatalogCloudFormationProvisionedProductProvisioningParameter{..} =
     object $
     catMaybes
-    [ fmap (("Key",) . toJSON) _serviceCatalogCloudFormationProvisionedProductProvisioningParameterKey
-    , fmap (("Value",) . toJSON) _serviceCatalogCloudFormationProvisionedProductProvisioningParameterValue
+    [ (Just . ("Key",) . toJSON) _serviceCatalogCloudFormationProvisionedProductProvisioningParameterKey
+    , (Just . ("Value",) . toJSON) _serviceCatalogCloudFormationProvisionedProductProvisioningParameterValue
     ]
 
 -- | Constructor for
 -- 'ServiceCatalogCloudFormationProvisionedProductProvisioningParameter'
 -- containing required fields as arguments.
 serviceCatalogCloudFormationProvisionedProductProvisioningParameter
-  :: ServiceCatalogCloudFormationProvisionedProductProvisioningParameter
-serviceCatalogCloudFormationProvisionedProductProvisioningParameter  =
+  :: Val Text -- ^ 'sccfppppKey'
+  -> Val Text -- ^ 'sccfppppValue'
+  -> ServiceCatalogCloudFormationProvisionedProductProvisioningParameter
+serviceCatalogCloudFormationProvisionedProductProvisioningParameter keyarg valuearg =
   ServiceCatalogCloudFormationProvisionedProductProvisioningParameter
-  { _serviceCatalogCloudFormationProvisionedProductProvisioningParameterKey = Nothing
-  , _serviceCatalogCloudFormationProvisionedProductProvisioningParameterValue = Nothing
+  { _serviceCatalogCloudFormationProvisionedProductProvisioningParameterKey = keyarg
+  , _serviceCatalogCloudFormationProvisionedProductProvisioningParameterValue = valuearg
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameter-key
-sccfppppKey :: Lens' ServiceCatalogCloudFormationProvisionedProductProvisioningParameter (Maybe (Val Text))
+sccfppppKey :: Lens' ServiceCatalogCloudFormationProvisionedProductProvisioningParameter (Val Text)
 sccfppppKey = lens _serviceCatalogCloudFormationProvisionedProductProvisioningParameterKey (\s a -> s { _serviceCatalogCloudFormationProvisionedProductProvisioningParameterKey = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationprovisionedproduct-provisioningparameter.html#cfn-servicecatalog-cloudformationprovisionedproduct-provisioningparameter-value
-sccfppppValue :: Lens' ServiceCatalogCloudFormationProvisionedProductProvisioningParameter (Maybe (Val Text))
+sccfppppValue :: Lens' ServiceCatalogCloudFormationProvisionedProductProvisioningParameter (Val Text)
 sccfppppValue = lens _serviceCatalogCloudFormationProvisionedProductProvisioningParameterValue (\s a -> s { _serviceCatalogCloudFormationProvisionedProductProvisioningParameterValue = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineTracingConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineTracingConfiguration.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineTracingConfiguration.hs
@@ -0,0 +1,41 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tracingconfiguration.html
+
+module Stratosphere.ResourceProperties.StepFunctionsStateMachineTracingConfiguration where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- StepFunctionsStateMachineTracingConfiguration. See
+-- 'stepFunctionsStateMachineTracingConfiguration' for a more convenient
+-- constructor.
+data StepFunctionsStateMachineTracingConfiguration =
+  StepFunctionsStateMachineTracingConfiguration
+  { _stepFunctionsStateMachineTracingConfigurationEnabled :: Val Bool
+  } deriving (Show, Eq)
+
+instance ToJSON StepFunctionsStateMachineTracingConfiguration where
+  toJSON StepFunctionsStateMachineTracingConfiguration{..} =
+    object $
+    catMaybes
+    [ (Just . ("Enabled",) . toJSON) _stepFunctionsStateMachineTracingConfigurationEnabled
+    ]
+
+-- | Constructor for 'StepFunctionsStateMachineTracingConfiguration'
+-- containing required fields as arguments.
+stepFunctionsStateMachineTracingConfiguration
+  :: Val Bool -- ^ 'sfsmtcEnabled'
+  -> StepFunctionsStateMachineTracingConfiguration
+stepFunctionsStateMachineTracingConfiguration enabledarg =
+  StepFunctionsStateMachineTracingConfiguration
+  { _stepFunctionsStateMachineTracingConfigurationEnabled = enabledarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-tracingconfiguration.html#cfn-stepfunctions-statemachine-tracingconfiguration-enabled
+sfsmtcEnabled :: Lens' StepFunctionsStateMachineTracingConfiguration (Val Bool)
+sfsmtcEnabled = lens _stepFunctionsStateMachineTracingConfigurationEnabled (\s a -> s { _stepFunctionsStateMachineTracingConfigurationEnabled = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SyntheticsCanaryRunConfig.hs b/library-gen/Stratosphere/ResourceProperties/SyntheticsCanaryRunConfig.hs
--- a/library-gen/Stratosphere/ResourceProperties/SyntheticsCanaryRunConfig.hs
+++ b/library-gen/Stratosphere/ResourceProperties/SyntheticsCanaryRunConfig.hs
@@ -14,14 +14,16 @@
 -- 'syntheticsCanaryRunConfig' for a more convenient constructor.
 data SyntheticsCanaryRunConfig =
   SyntheticsCanaryRunConfig
-  { _syntheticsCanaryRunConfigTimeoutInSeconds :: Val Integer
+  { _syntheticsCanaryRunConfigMemoryInMB :: Maybe (Val Integer)
+  , _syntheticsCanaryRunConfigTimeoutInSeconds :: Val Integer
   } deriving (Show, Eq)
 
 instance ToJSON SyntheticsCanaryRunConfig where
   toJSON SyntheticsCanaryRunConfig{..} =
     object $
     catMaybes
-    [ (Just . ("TimeoutInSeconds",) . toJSON) _syntheticsCanaryRunConfigTimeoutInSeconds
+    [ fmap (("MemoryInMB",) . toJSON) _syntheticsCanaryRunConfigMemoryInMB
+    , (Just . ("TimeoutInSeconds",) . toJSON) _syntheticsCanaryRunConfigTimeoutInSeconds
     ]
 
 -- | Constructor for 'SyntheticsCanaryRunConfig' containing required fields as
@@ -31,8 +33,13 @@
   -> SyntheticsCanaryRunConfig
 syntheticsCanaryRunConfig timeoutInSecondsarg =
   SyntheticsCanaryRunConfig
-  { _syntheticsCanaryRunConfigTimeoutInSeconds = timeoutInSecondsarg
+  { _syntheticsCanaryRunConfigMemoryInMB = Nothing
+  , _syntheticsCanaryRunConfigTimeoutInSeconds = timeoutInSecondsarg
   }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-runconfig.html#cfn-synthetics-canary-runconfig-memoryinmb
+scrcMemoryInMB :: Lens' SyntheticsCanaryRunConfig (Maybe (Val Integer))
+scrcMemoryInMB = lens _syntheticsCanaryRunConfigMemoryInMB (\s a -> s { _syntheticsCanaryRunConfigMemoryInMB = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-runconfig.html#cfn-synthetics-canary-runconfig-timeoutinseconds
 scrcTimeoutInSeconds :: Lens' SyntheticsCanaryRunConfig (Val Integer)
diff --git a/library-gen/Stratosphere/ResourceProperties/SyntheticsCanarySchedule.hs b/library-gen/Stratosphere/ResourceProperties/SyntheticsCanarySchedule.hs
--- a/library-gen/Stratosphere/ResourceProperties/SyntheticsCanarySchedule.hs
+++ b/library-gen/Stratosphere/ResourceProperties/SyntheticsCanarySchedule.hs
@@ -14,7 +14,7 @@
 -- 'syntheticsCanarySchedule' for a more convenient constructor.
 data SyntheticsCanarySchedule =
   SyntheticsCanarySchedule
-  { _syntheticsCanaryScheduleDurationInSeconds :: Val Text
+  { _syntheticsCanaryScheduleDurationInSeconds :: Maybe (Val Text)
   , _syntheticsCanaryScheduleExpression :: Val Text
   } deriving (Show, Eq)
 
@@ -22,24 +22,23 @@
   toJSON SyntheticsCanarySchedule{..} =
     object $
     catMaybes
-    [ (Just . ("DurationInSeconds",) . toJSON) _syntheticsCanaryScheduleDurationInSeconds
+    [ fmap (("DurationInSeconds",) . toJSON) _syntheticsCanaryScheduleDurationInSeconds
     , (Just . ("Expression",) . toJSON) _syntheticsCanaryScheduleExpression
     ]
 
 -- | Constructor for 'SyntheticsCanarySchedule' containing required fields as
 -- arguments.
 syntheticsCanarySchedule
-  :: Val Text -- ^ 'scsDurationInSeconds'
-  -> Val Text -- ^ 'scsExpression'
+  :: Val Text -- ^ 'scsExpression'
   -> SyntheticsCanarySchedule
-syntheticsCanarySchedule durationInSecondsarg expressionarg =
+syntheticsCanarySchedule expressionarg =
   SyntheticsCanarySchedule
-  { _syntheticsCanaryScheduleDurationInSeconds = durationInSecondsarg
+  { _syntheticsCanaryScheduleDurationInSeconds = Nothing
   , _syntheticsCanaryScheduleExpression = expressionarg
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-schedule.html#cfn-synthetics-canary-schedule-durationinseconds
-scsDurationInSeconds :: Lens' SyntheticsCanarySchedule (Val Text)
+scsDurationInSeconds :: Lens' SyntheticsCanarySchedule (Maybe (Val Text))
 scsDurationInSeconds = lens _syntheticsCanaryScheduleDurationInSeconds (\s a -> s { _syntheticsCanaryScheduleDurationInSeconds = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-schedule.html#cfn-synthetics-canary-schedule-expression
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupForwardedIPConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupForwardedIPConfiguration.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupForwardedIPConfiguration.hs
@@ -0,0 +1,48 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-forwardedipconfiguration.html
+
+module Stratosphere.ResourceProperties.WAFv2RuleGroupForwardedIPConfiguration where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for WAFv2RuleGroupForwardedIPConfiguration. See
+-- 'waFv2RuleGroupForwardedIPConfiguration' for a more convenient
+-- constructor.
+data WAFv2RuleGroupForwardedIPConfiguration =
+  WAFv2RuleGroupForwardedIPConfiguration
+  { _wAFv2RuleGroupForwardedIPConfigurationFallbackBehavior :: Val Text
+  , _wAFv2RuleGroupForwardedIPConfigurationHeaderName :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON WAFv2RuleGroupForwardedIPConfiguration where
+  toJSON WAFv2RuleGroupForwardedIPConfiguration{..} =
+    object $
+    catMaybes
+    [ (Just . ("FallbackBehavior",) . toJSON) _wAFv2RuleGroupForwardedIPConfigurationFallbackBehavior
+    , (Just . ("HeaderName",) . toJSON) _wAFv2RuleGroupForwardedIPConfigurationHeaderName
+    ]
+
+-- | Constructor for 'WAFv2RuleGroupForwardedIPConfiguration' containing
+-- required fields as arguments.
+waFv2RuleGroupForwardedIPConfiguration
+  :: Val Text -- ^ 'wafrgfipcFallbackBehavior'
+  -> Val Text -- ^ 'wafrgfipcHeaderName'
+  -> WAFv2RuleGroupForwardedIPConfiguration
+waFv2RuleGroupForwardedIPConfiguration fallbackBehaviorarg headerNamearg =
+  WAFv2RuleGroupForwardedIPConfiguration
+  { _wAFv2RuleGroupForwardedIPConfigurationFallbackBehavior = fallbackBehaviorarg
+  , _wAFv2RuleGroupForwardedIPConfigurationHeaderName = headerNamearg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-forwardedipconfiguration.html#cfn-wafv2-rulegroup-forwardedipconfiguration-fallbackbehavior
+wafrgfipcFallbackBehavior :: Lens' WAFv2RuleGroupForwardedIPConfiguration (Val Text)
+wafrgfipcFallbackBehavior = lens _wAFv2RuleGroupForwardedIPConfigurationFallbackBehavior (\s a -> s { _wAFv2RuleGroupForwardedIPConfigurationFallbackBehavior = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-forwardedipconfiguration.html#cfn-wafv2-rulegroup-forwardedipconfiguration-headername
+wafrgfipcHeaderName :: Lens' WAFv2RuleGroupForwardedIPConfiguration (Val Text)
+wafrgfipcHeaderName = lens _wAFv2RuleGroupForwardedIPConfigurationHeaderName (\s a -> s { _wAFv2RuleGroupForwardedIPConfigurationHeaderName = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupGeoMatchStatement.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupGeoMatchStatement.hs
--- a/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupGeoMatchStatement.hs
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupGeoMatchStatement.hs
@@ -8,13 +8,14 @@
 module Stratosphere.ResourceProperties.WAFv2RuleGroupGeoMatchStatement where
 
 import Stratosphere.ResourceImports
-
+import Stratosphere.ResourceProperties.WAFv2RuleGroupForwardedIPConfiguration
 
 -- | Full data type definition for WAFv2RuleGroupGeoMatchStatement. See
 -- 'waFv2RuleGroupGeoMatchStatement' for a more convenient constructor.
 data WAFv2RuleGroupGeoMatchStatement =
   WAFv2RuleGroupGeoMatchStatement
   { _wAFv2RuleGroupGeoMatchStatementCountryCodes :: Maybe (ValList Text)
+  , _wAFv2RuleGroupGeoMatchStatementForwardedIPConfig :: Maybe WAFv2RuleGroupForwardedIPConfiguration
   } deriving (Show, Eq)
 
 instance ToJSON WAFv2RuleGroupGeoMatchStatement where
@@ -22,6 +23,7 @@
     object $
     catMaybes
     [ fmap (("CountryCodes",) . toJSON) _wAFv2RuleGroupGeoMatchStatementCountryCodes
+    , fmap (("ForwardedIPConfig",) . toJSON) _wAFv2RuleGroupGeoMatchStatementForwardedIPConfig
     ]
 
 -- | Constructor for 'WAFv2RuleGroupGeoMatchStatement' containing required
@@ -31,8 +33,13 @@
 waFv2RuleGroupGeoMatchStatement  =
   WAFv2RuleGroupGeoMatchStatement
   { _wAFv2RuleGroupGeoMatchStatementCountryCodes = Nothing
+  , _wAFv2RuleGroupGeoMatchStatementForwardedIPConfig = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-geomatchstatement.html#cfn-wafv2-rulegroup-geomatchstatement-countrycodes
 wafrggmsCountryCodes :: Lens' WAFv2RuleGroupGeoMatchStatement (Maybe (ValList Text))
 wafrggmsCountryCodes = lens _wAFv2RuleGroupGeoMatchStatementCountryCodes (\s a -> s { _wAFv2RuleGroupGeoMatchStatementCountryCodes = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-geomatchstatement.html#cfn-wafv2-rulegroup-geomatchstatement-forwardedipconfig
+wafrggmsForwardedIPConfig :: Lens' WAFv2RuleGroupGeoMatchStatement (Maybe WAFv2RuleGroupForwardedIPConfiguration)
+wafrggmsForwardedIPConfig = lens _wAFv2RuleGroupGeoMatchStatementForwardedIPConfig (\s a -> s { _wAFv2RuleGroupGeoMatchStatementForwardedIPConfig = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupIPSetForwardedIPConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupIPSetForwardedIPConfiguration.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupIPSetForwardedIPConfiguration.hs
@@ -0,0 +1,57 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetforwardedipconfiguration.html
+
+module Stratosphere.ResourceProperties.WAFv2RuleGroupIPSetForwardedIPConfiguration where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- WAFv2RuleGroupIPSetForwardedIPConfiguration. See
+-- 'waFv2RuleGroupIPSetForwardedIPConfiguration' for a more convenient
+-- constructor.
+data WAFv2RuleGroupIPSetForwardedIPConfiguration =
+  WAFv2RuleGroupIPSetForwardedIPConfiguration
+  { _wAFv2RuleGroupIPSetForwardedIPConfigurationFallbackBehavior :: Val Text
+  , _wAFv2RuleGroupIPSetForwardedIPConfigurationHeaderName :: Val Text
+  , _wAFv2RuleGroupIPSetForwardedIPConfigurationPosition :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON WAFv2RuleGroupIPSetForwardedIPConfiguration where
+  toJSON WAFv2RuleGroupIPSetForwardedIPConfiguration{..} =
+    object $
+    catMaybes
+    [ (Just . ("FallbackBehavior",) . toJSON) _wAFv2RuleGroupIPSetForwardedIPConfigurationFallbackBehavior
+    , (Just . ("HeaderName",) . toJSON) _wAFv2RuleGroupIPSetForwardedIPConfigurationHeaderName
+    , (Just . ("Position",) . toJSON) _wAFv2RuleGroupIPSetForwardedIPConfigurationPosition
+    ]
+
+-- | Constructor for 'WAFv2RuleGroupIPSetForwardedIPConfiguration' containing
+-- required fields as arguments.
+waFv2RuleGroupIPSetForwardedIPConfiguration
+  :: Val Text -- ^ 'wafrgipsfipcFallbackBehavior'
+  -> Val Text -- ^ 'wafrgipsfipcHeaderName'
+  -> Val Text -- ^ 'wafrgipsfipcPosition'
+  -> WAFv2RuleGroupIPSetForwardedIPConfiguration
+waFv2RuleGroupIPSetForwardedIPConfiguration fallbackBehaviorarg headerNamearg positionarg =
+  WAFv2RuleGroupIPSetForwardedIPConfiguration
+  { _wAFv2RuleGroupIPSetForwardedIPConfigurationFallbackBehavior = fallbackBehaviorarg
+  , _wAFv2RuleGroupIPSetForwardedIPConfigurationHeaderName = headerNamearg
+  , _wAFv2RuleGroupIPSetForwardedIPConfigurationPosition = positionarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetforwardedipconfiguration.html#cfn-wafv2-rulegroup-ipsetforwardedipconfiguration-fallbackbehavior
+wafrgipsfipcFallbackBehavior :: Lens' WAFv2RuleGroupIPSetForwardedIPConfiguration (Val Text)
+wafrgipsfipcFallbackBehavior = lens _wAFv2RuleGroupIPSetForwardedIPConfigurationFallbackBehavior (\s a -> s { _wAFv2RuleGroupIPSetForwardedIPConfigurationFallbackBehavior = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetforwardedipconfiguration.html#cfn-wafv2-rulegroup-ipsetforwardedipconfiguration-headername
+wafrgipsfipcHeaderName :: Lens' WAFv2RuleGroupIPSetForwardedIPConfiguration (Val Text)
+wafrgipsfipcHeaderName = lens _wAFv2RuleGroupIPSetForwardedIPConfigurationHeaderName (\s a -> s { _wAFv2RuleGroupIPSetForwardedIPConfigurationHeaderName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetforwardedipconfiguration.html#cfn-wafv2-rulegroup-ipsetforwardedipconfiguration-position
+wafrgipsfipcPosition :: Lens' WAFv2RuleGroupIPSetForwardedIPConfiguration (Val Text)
+wafrgipsfipcPosition = lens _wAFv2RuleGroupIPSetForwardedIPConfigurationPosition (\s a -> s { _wAFv2RuleGroupIPSetForwardedIPConfigurationPosition = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupIPSetReferenceStatement.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupIPSetReferenceStatement.hs
--- a/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupIPSetReferenceStatement.hs
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupIPSetReferenceStatement.hs
@@ -8,7 +8,7 @@
 module Stratosphere.ResourceProperties.WAFv2RuleGroupIPSetReferenceStatement where
 
 import Stratosphere.ResourceImports
-
+import Stratosphere.ResourceProperties.WAFv2RuleGroupIPSetForwardedIPConfiguration
 
 -- | Full data type definition for WAFv2RuleGroupIPSetReferenceStatement. See
 -- 'waFv2RuleGroupIPSetReferenceStatement' for a more convenient
@@ -16,6 +16,7 @@
 data WAFv2RuleGroupIPSetReferenceStatement =
   WAFv2RuleGroupIPSetReferenceStatement
   { _wAFv2RuleGroupIPSetReferenceStatementArn :: Val Text
+  , _wAFv2RuleGroupIPSetReferenceStatementIPSetForwardedIPConfig :: Maybe WAFv2RuleGroupIPSetForwardedIPConfiguration
   } deriving (Show, Eq)
 
 instance ToJSON WAFv2RuleGroupIPSetReferenceStatement where
@@ -23,6 +24,7 @@
     object $
     catMaybes
     [ (Just . ("Arn",) . toJSON) _wAFv2RuleGroupIPSetReferenceStatementArn
+    , fmap (("IPSetForwardedIPConfig",) . toJSON) _wAFv2RuleGroupIPSetReferenceStatementIPSetForwardedIPConfig
     ]
 
 -- | Constructor for 'WAFv2RuleGroupIPSetReferenceStatement' containing
@@ -33,8 +35,13 @@
 waFv2RuleGroupIPSetReferenceStatement arnarg =
   WAFv2RuleGroupIPSetReferenceStatement
   { _wAFv2RuleGroupIPSetReferenceStatementArn = arnarg
+  , _wAFv2RuleGroupIPSetReferenceStatementIPSetForwardedIPConfig = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetreferencestatement.html#cfn-wafv2-rulegroup-ipsetreferencestatement-arn
 wafrgipsrsArn :: Lens' WAFv2RuleGroupIPSetReferenceStatement (Val Text)
 wafrgipsrsArn = lens _wAFv2RuleGroupIPSetReferenceStatementArn (\s a -> s { _wAFv2RuleGroupIPSetReferenceStatementArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ipsetreferencestatement.html#cfn-wafv2-rulegroup-ipsetreferencestatement-ipsetforwardedipconfig
+wafrgipsrsIPSetForwardedIPConfig :: Lens' WAFv2RuleGroupIPSetReferenceStatement (Maybe WAFv2RuleGroupIPSetForwardedIPConfiguration)
+wafrgipsrsIPSetForwardedIPConfig = lens _wAFv2RuleGroupIPSetReferenceStatementIPSetForwardedIPConfig (\s a -> s { _wAFv2RuleGroupIPSetReferenceStatementIPSetForwardedIPConfig = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupRateBasedStatementOne.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupRateBasedStatementOne.hs
--- a/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupRateBasedStatementOne.hs
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupRateBasedStatementOne.hs
@@ -8,6 +8,7 @@
 module Stratosphere.ResourceProperties.WAFv2RuleGroupRateBasedStatementOne where
 
 import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.WAFv2RuleGroupForwardedIPConfiguration
 import Stratosphere.ResourceProperties.WAFv2RuleGroupStatementTwo
 
 -- | Full data type definition for WAFv2RuleGroupRateBasedStatementOne. See
@@ -15,6 +16,7 @@
 data WAFv2RuleGroupRateBasedStatementOne =
   WAFv2RuleGroupRateBasedStatementOne
   { _wAFv2RuleGroupRateBasedStatementOneAggregateKeyType :: Val Text
+  , _wAFv2RuleGroupRateBasedStatementOneForwardedIPConfig :: Maybe WAFv2RuleGroupForwardedIPConfiguration
   , _wAFv2RuleGroupRateBasedStatementOneLimit :: Val Integer
   , _wAFv2RuleGroupRateBasedStatementOneScopeDownStatement :: Maybe WAFv2RuleGroupStatementTwo
   } deriving (Show, Eq)
@@ -24,6 +26,7 @@
     object $
     catMaybes
     [ (Just . ("AggregateKeyType",) . toJSON) _wAFv2RuleGroupRateBasedStatementOneAggregateKeyType
+    , fmap (("ForwardedIPConfig",) . toJSON) _wAFv2RuleGroupRateBasedStatementOneForwardedIPConfig
     , (Just . ("Limit",) . toJSON) _wAFv2RuleGroupRateBasedStatementOneLimit
     , fmap (("ScopeDownStatement",) . toJSON) _wAFv2RuleGroupRateBasedStatementOneScopeDownStatement
     ]
@@ -37,6 +40,7 @@
 waFv2RuleGroupRateBasedStatementOne aggregateKeyTypearg limitarg =
   WAFv2RuleGroupRateBasedStatementOne
   { _wAFv2RuleGroupRateBasedStatementOneAggregateKeyType = aggregateKeyTypearg
+  , _wAFv2RuleGroupRateBasedStatementOneForwardedIPConfig = Nothing
   , _wAFv2RuleGroupRateBasedStatementOneLimit = limitarg
   , _wAFv2RuleGroupRateBasedStatementOneScopeDownStatement = Nothing
   }
@@ -44,6 +48,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementone.html#cfn-wafv2-rulegroup-ratebasedstatementone-aggregatekeytype
 wafrgrbsoAggregateKeyType :: Lens' WAFv2RuleGroupRateBasedStatementOne (Val Text)
 wafrgrbsoAggregateKeyType = lens _wAFv2RuleGroupRateBasedStatementOneAggregateKeyType (\s a -> s { _wAFv2RuleGroupRateBasedStatementOneAggregateKeyType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementone.html#cfn-wafv2-rulegroup-ratebasedstatementone-forwardedipconfig
+wafrgrbsoForwardedIPConfig :: Lens' WAFv2RuleGroupRateBasedStatementOne (Maybe WAFv2RuleGroupForwardedIPConfiguration)
+wafrgrbsoForwardedIPConfig = lens _wAFv2RuleGroupRateBasedStatementOneForwardedIPConfig (\s a -> s { _wAFv2RuleGroupRateBasedStatementOneForwardedIPConfig = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementone.html#cfn-wafv2-rulegroup-ratebasedstatementone-limit
 wafrgrbsoLimit :: Lens' WAFv2RuleGroupRateBasedStatementOne (Val Integer)
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupRateBasedStatementTwo.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupRateBasedStatementTwo.hs
--- a/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupRateBasedStatementTwo.hs
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2RuleGroupRateBasedStatementTwo.hs
@@ -8,6 +8,7 @@
 module Stratosphere.ResourceProperties.WAFv2RuleGroupRateBasedStatementTwo where
 
 import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.WAFv2RuleGroupForwardedIPConfiguration
 import Stratosphere.ResourceProperties.WAFv2RuleGroupStatementThree
 
 -- | Full data type definition for WAFv2RuleGroupRateBasedStatementTwo. See
@@ -15,6 +16,7 @@
 data WAFv2RuleGroupRateBasedStatementTwo =
   WAFv2RuleGroupRateBasedStatementTwo
   { _wAFv2RuleGroupRateBasedStatementTwoAggregateKeyType :: Val Text
+  , _wAFv2RuleGroupRateBasedStatementTwoForwardedIPConfig :: Maybe WAFv2RuleGroupForwardedIPConfiguration
   , _wAFv2RuleGroupRateBasedStatementTwoLimit :: Val Integer
   , _wAFv2RuleGroupRateBasedStatementTwoScopeDownStatement :: Maybe WAFv2RuleGroupStatementThree
   } deriving (Show, Eq)
@@ -24,6 +26,7 @@
     object $
     catMaybes
     [ (Just . ("AggregateKeyType",) . toJSON) _wAFv2RuleGroupRateBasedStatementTwoAggregateKeyType
+    , fmap (("ForwardedIPConfig",) . toJSON) _wAFv2RuleGroupRateBasedStatementTwoForwardedIPConfig
     , (Just . ("Limit",) . toJSON) _wAFv2RuleGroupRateBasedStatementTwoLimit
     , fmap (("ScopeDownStatement",) . toJSON) _wAFv2RuleGroupRateBasedStatementTwoScopeDownStatement
     ]
@@ -37,6 +40,7 @@
 waFv2RuleGroupRateBasedStatementTwo aggregateKeyTypearg limitarg =
   WAFv2RuleGroupRateBasedStatementTwo
   { _wAFv2RuleGroupRateBasedStatementTwoAggregateKeyType = aggregateKeyTypearg
+  , _wAFv2RuleGroupRateBasedStatementTwoForwardedIPConfig = Nothing
   , _wAFv2RuleGroupRateBasedStatementTwoLimit = limitarg
   , _wAFv2RuleGroupRateBasedStatementTwoScopeDownStatement = Nothing
   }
@@ -44,6 +48,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementtwo.html#cfn-wafv2-rulegroup-ratebasedstatementtwo-aggregatekeytype
 wafrgrbstAggregateKeyType :: Lens' WAFv2RuleGroupRateBasedStatementTwo (Val Text)
 wafrgrbstAggregateKeyType = lens _wAFv2RuleGroupRateBasedStatementTwoAggregateKeyType (\s a -> s { _wAFv2RuleGroupRateBasedStatementTwoAggregateKeyType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementtwo.html#cfn-wafv2-rulegroup-ratebasedstatementtwo-forwardedipconfig
+wafrgrbstForwardedIPConfig :: Lens' WAFv2RuleGroupRateBasedStatementTwo (Maybe WAFv2RuleGroupForwardedIPConfiguration)
+wafrgrbstForwardedIPConfig = lens _wAFv2RuleGroupRateBasedStatementTwoForwardedIPConfig (\s a -> s { _wAFv2RuleGroupRateBasedStatementTwoForwardedIPConfig = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatementtwo.html#cfn-wafv2-rulegroup-ratebasedstatementtwo-limit
 wafrgrbstLimit :: Lens' WAFv2RuleGroupRateBasedStatementTwo (Val Integer)
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLForwardedIPConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLForwardedIPConfiguration.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLForwardedIPConfiguration.hs
@@ -0,0 +1,47 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-forwardedipconfiguration.html
+
+module Stratosphere.ResourceProperties.WAFv2WebACLForwardedIPConfiguration where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for WAFv2WebACLForwardedIPConfiguration. See
+-- 'waFv2WebACLForwardedIPConfiguration' for a more convenient constructor.
+data WAFv2WebACLForwardedIPConfiguration =
+  WAFv2WebACLForwardedIPConfiguration
+  { _wAFv2WebACLForwardedIPConfigurationFallbackBehavior :: Val Text
+  , _wAFv2WebACLForwardedIPConfigurationHeaderName :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON WAFv2WebACLForwardedIPConfiguration where
+  toJSON WAFv2WebACLForwardedIPConfiguration{..} =
+    object $
+    catMaybes
+    [ (Just . ("FallbackBehavior",) . toJSON) _wAFv2WebACLForwardedIPConfigurationFallbackBehavior
+    , (Just . ("HeaderName",) . toJSON) _wAFv2WebACLForwardedIPConfigurationHeaderName
+    ]
+
+-- | Constructor for 'WAFv2WebACLForwardedIPConfiguration' containing required
+-- fields as arguments.
+waFv2WebACLForwardedIPConfiguration
+  :: Val Text -- ^ 'wafwaclfipcFallbackBehavior'
+  -> Val Text -- ^ 'wafwaclfipcHeaderName'
+  -> WAFv2WebACLForwardedIPConfiguration
+waFv2WebACLForwardedIPConfiguration fallbackBehaviorarg headerNamearg =
+  WAFv2WebACLForwardedIPConfiguration
+  { _wAFv2WebACLForwardedIPConfigurationFallbackBehavior = fallbackBehaviorarg
+  , _wAFv2WebACLForwardedIPConfigurationHeaderName = headerNamearg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-forwardedipconfiguration.html#cfn-wafv2-webacl-forwardedipconfiguration-fallbackbehavior
+wafwaclfipcFallbackBehavior :: Lens' WAFv2WebACLForwardedIPConfiguration (Val Text)
+wafwaclfipcFallbackBehavior = lens _wAFv2WebACLForwardedIPConfigurationFallbackBehavior (\s a -> s { _wAFv2WebACLForwardedIPConfigurationFallbackBehavior = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-forwardedipconfiguration.html#cfn-wafv2-webacl-forwardedipconfiguration-headername
+wafwaclfipcHeaderName :: Lens' WAFv2WebACLForwardedIPConfiguration (Val Text)
+wafwaclfipcHeaderName = lens _wAFv2WebACLForwardedIPConfigurationHeaderName (\s a -> s { _wAFv2WebACLForwardedIPConfigurationHeaderName = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLGeoMatchStatement.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLGeoMatchStatement.hs
--- a/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLGeoMatchStatement.hs
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLGeoMatchStatement.hs
@@ -8,13 +8,14 @@
 module Stratosphere.ResourceProperties.WAFv2WebACLGeoMatchStatement where
 
 import Stratosphere.ResourceImports
-
+import Stratosphere.ResourceProperties.WAFv2WebACLForwardedIPConfiguration
 
 -- | Full data type definition for WAFv2WebACLGeoMatchStatement. See
 -- 'waFv2WebACLGeoMatchStatement' for a more convenient constructor.
 data WAFv2WebACLGeoMatchStatement =
   WAFv2WebACLGeoMatchStatement
   { _wAFv2WebACLGeoMatchStatementCountryCodes :: Maybe (ValList Text)
+  , _wAFv2WebACLGeoMatchStatementForwardedIPConfig :: Maybe WAFv2WebACLForwardedIPConfiguration
   } deriving (Show, Eq)
 
 instance ToJSON WAFv2WebACLGeoMatchStatement where
@@ -22,6 +23,7 @@
     object $
     catMaybes
     [ fmap (("CountryCodes",) . toJSON) _wAFv2WebACLGeoMatchStatementCountryCodes
+    , fmap (("ForwardedIPConfig",) . toJSON) _wAFv2WebACLGeoMatchStatementForwardedIPConfig
     ]
 
 -- | Constructor for 'WAFv2WebACLGeoMatchStatement' containing required fields
@@ -31,8 +33,13 @@
 waFv2WebACLGeoMatchStatement  =
   WAFv2WebACLGeoMatchStatement
   { _wAFv2WebACLGeoMatchStatementCountryCodes = Nothing
+  , _wAFv2WebACLGeoMatchStatementForwardedIPConfig = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-geomatchstatement.html#cfn-wafv2-webacl-geomatchstatement-countrycodes
 wafwaclgmsCountryCodes :: Lens' WAFv2WebACLGeoMatchStatement (Maybe (ValList Text))
 wafwaclgmsCountryCodes = lens _wAFv2WebACLGeoMatchStatementCountryCodes (\s a -> s { _wAFv2WebACLGeoMatchStatementCountryCodes = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-geomatchstatement.html#cfn-wafv2-webacl-geomatchstatement-forwardedipconfig
+wafwaclgmsForwardedIPConfig :: Lens' WAFv2WebACLGeoMatchStatement (Maybe WAFv2WebACLForwardedIPConfiguration)
+wafwaclgmsForwardedIPConfig = lens _wAFv2WebACLGeoMatchStatementForwardedIPConfig (\s a -> s { _wAFv2WebACLGeoMatchStatementForwardedIPConfig = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLIPSetForwardedIPConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLIPSetForwardedIPConfiguration.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLIPSetForwardedIPConfiguration.hs
@@ -0,0 +1,56 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetforwardedipconfiguration.html
+
+module Stratosphere.ResourceProperties.WAFv2WebACLIPSetForwardedIPConfiguration where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for WAFv2WebACLIPSetForwardedIPConfiguration.
+-- See 'waFv2WebACLIPSetForwardedIPConfiguration' for a more convenient
+-- constructor.
+data WAFv2WebACLIPSetForwardedIPConfiguration =
+  WAFv2WebACLIPSetForwardedIPConfiguration
+  { _wAFv2WebACLIPSetForwardedIPConfigurationFallbackBehavior :: Val Text
+  , _wAFv2WebACLIPSetForwardedIPConfigurationHeaderName :: Val Text
+  , _wAFv2WebACLIPSetForwardedIPConfigurationPosition :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON WAFv2WebACLIPSetForwardedIPConfiguration where
+  toJSON WAFv2WebACLIPSetForwardedIPConfiguration{..} =
+    object $
+    catMaybes
+    [ (Just . ("FallbackBehavior",) . toJSON) _wAFv2WebACLIPSetForwardedIPConfigurationFallbackBehavior
+    , (Just . ("HeaderName",) . toJSON) _wAFv2WebACLIPSetForwardedIPConfigurationHeaderName
+    , (Just . ("Position",) . toJSON) _wAFv2WebACLIPSetForwardedIPConfigurationPosition
+    ]
+
+-- | Constructor for 'WAFv2WebACLIPSetForwardedIPConfiguration' containing
+-- required fields as arguments.
+waFv2WebACLIPSetForwardedIPConfiguration
+  :: Val Text -- ^ 'wafwaclipsfipcFallbackBehavior'
+  -> Val Text -- ^ 'wafwaclipsfipcHeaderName'
+  -> Val Text -- ^ 'wafwaclipsfipcPosition'
+  -> WAFv2WebACLIPSetForwardedIPConfiguration
+waFv2WebACLIPSetForwardedIPConfiguration fallbackBehaviorarg headerNamearg positionarg =
+  WAFv2WebACLIPSetForwardedIPConfiguration
+  { _wAFv2WebACLIPSetForwardedIPConfigurationFallbackBehavior = fallbackBehaviorarg
+  , _wAFv2WebACLIPSetForwardedIPConfigurationHeaderName = headerNamearg
+  , _wAFv2WebACLIPSetForwardedIPConfigurationPosition = positionarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetforwardedipconfiguration.html#cfn-wafv2-webacl-ipsetforwardedipconfiguration-fallbackbehavior
+wafwaclipsfipcFallbackBehavior :: Lens' WAFv2WebACLIPSetForwardedIPConfiguration (Val Text)
+wafwaclipsfipcFallbackBehavior = lens _wAFv2WebACLIPSetForwardedIPConfigurationFallbackBehavior (\s a -> s { _wAFv2WebACLIPSetForwardedIPConfigurationFallbackBehavior = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetforwardedipconfiguration.html#cfn-wafv2-webacl-ipsetforwardedipconfiguration-headername
+wafwaclipsfipcHeaderName :: Lens' WAFv2WebACLIPSetForwardedIPConfiguration (Val Text)
+wafwaclipsfipcHeaderName = lens _wAFv2WebACLIPSetForwardedIPConfigurationHeaderName (\s a -> s { _wAFv2WebACLIPSetForwardedIPConfigurationHeaderName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetforwardedipconfiguration.html#cfn-wafv2-webacl-ipsetforwardedipconfiguration-position
+wafwaclipsfipcPosition :: Lens' WAFv2WebACLIPSetForwardedIPConfiguration (Val Text)
+wafwaclipsfipcPosition = lens _wAFv2WebACLIPSetForwardedIPConfigurationPosition (\s a -> s { _wAFv2WebACLIPSetForwardedIPConfigurationPosition = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLIPSetReferenceStatement.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLIPSetReferenceStatement.hs
--- a/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLIPSetReferenceStatement.hs
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLIPSetReferenceStatement.hs
@@ -8,13 +8,14 @@
 module Stratosphere.ResourceProperties.WAFv2WebACLIPSetReferenceStatement where
 
 import Stratosphere.ResourceImports
-
+import Stratosphere.ResourceProperties.WAFv2WebACLIPSetForwardedIPConfiguration
 
 -- | Full data type definition for WAFv2WebACLIPSetReferenceStatement. See
 -- 'waFv2WebACLIPSetReferenceStatement' for a more convenient constructor.
 data WAFv2WebACLIPSetReferenceStatement =
   WAFv2WebACLIPSetReferenceStatement
   { _wAFv2WebACLIPSetReferenceStatementArn :: Val Text
+  , _wAFv2WebACLIPSetReferenceStatementIPSetForwardedIPConfig :: Maybe WAFv2WebACLIPSetForwardedIPConfiguration
   } deriving (Show, Eq)
 
 instance ToJSON WAFv2WebACLIPSetReferenceStatement where
@@ -22,6 +23,7 @@
     object $
     catMaybes
     [ (Just . ("Arn",) . toJSON) _wAFv2WebACLIPSetReferenceStatementArn
+    , fmap (("IPSetForwardedIPConfig",) . toJSON) _wAFv2WebACLIPSetReferenceStatementIPSetForwardedIPConfig
     ]
 
 -- | Constructor for 'WAFv2WebACLIPSetReferenceStatement' containing required
@@ -32,8 +34,13 @@
 waFv2WebACLIPSetReferenceStatement arnarg =
   WAFv2WebACLIPSetReferenceStatement
   { _wAFv2WebACLIPSetReferenceStatementArn = arnarg
+  , _wAFv2WebACLIPSetReferenceStatementIPSetForwardedIPConfig = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetreferencestatement.html#cfn-wafv2-webacl-ipsetreferencestatement-arn
 wafwaclipsrsArn :: Lens' WAFv2WebACLIPSetReferenceStatement (Val Text)
 wafwaclipsrsArn = lens _wAFv2WebACLIPSetReferenceStatementArn (\s a -> s { _wAFv2WebACLIPSetReferenceStatementArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ipsetreferencestatement.html#cfn-wafv2-webacl-ipsetreferencestatement-ipsetforwardedipconfig
+wafwaclipsrsIPSetForwardedIPConfig :: Lens' WAFv2WebACLIPSetReferenceStatement (Maybe WAFv2WebACLIPSetForwardedIPConfiguration)
+wafwaclipsrsIPSetForwardedIPConfig = lens _wAFv2WebACLIPSetReferenceStatementIPSetForwardedIPConfig (\s a -> s { _wAFv2WebACLIPSetReferenceStatementIPSetForwardedIPConfig = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLRateBasedStatementOne.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLRateBasedStatementOne.hs
--- a/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLRateBasedStatementOne.hs
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLRateBasedStatementOne.hs
@@ -8,6 +8,7 @@
 module Stratosphere.ResourceProperties.WAFv2WebACLRateBasedStatementOne where
 
 import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.WAFv2WebACLForwardedIPConfiguration
 import Stratosphere.ResourceProperties.WAFv2WebACLStatementTwo
 
 -- | Full data type definition for WAFv2WebACLRateBasedStatementOne. See
@@ -15,6 +16,7 @@
 data WAFv2WebACLRateBasedStatementOne =
   WAFv2WebACLRateBasedStatementOne
   { _wAFv2WebACLRateBasedStatementOneAggregateKeyType :: Val Text
+  , _wAFv2WebACLRateBasedStatementOneForwardedIPConfig :: Maybe WAFv2WebACLForwardedIPConfiguration
   , _wAFv2WebACLRateBasedStatementOneLimit :: Val Integer
   , _wAFv2WebACLRateBasedStatementOneScopeDownStatement :: Maybe WAFv2WebACLStatementTwo
   } deriving (Show, Eq)
@@ -24,6 +26,7 @@
     object $
     catMaybes
     [ (Just . ("AggregateKeyType",) . toJSON) _wAFv2WebACLRateBasedStatementOneAggregateKeyType
+    , fmap (("ForwardedIPConfig",) . toJSON) _wAFv2WebACLRateBasedStatementOneForwardedIPConfig
     , (Just . ("Limit",) . toJSON) _wAFv2WebACLRateBasedStatementOneLimit
     , fmap (("ScopeDownStatement",) . toJSON) _wAFv2WebACLRateBasedStatementOneScopeDownStatement
     ]
@@ -37,6 +40,7 @@
 waFv2WebACLRateBasedStatementOne aggregateKeyTypearg limitarg =
   WAFv2WebACLRateBasedStatementOne
   { _wAFv2WebACLRateBasedStatementOneAggregateKeyType = aggregateKeyTypearg
+  , _wAFv2WebACLRateBasedStatementOneForwardedIPConfig = Nothing
   , _wAFv2WebACLRateBasedStatementOneLimit = limitarg
   , _wAFv2WebACLRateBasedStatementOneScopeDownStatement = Nothing
   }
@@ -44,6 +48,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementone.html#cfn-wafv2-webacl-ratebasedstatementone-aggregatekeytype
 wafwaclrbsoAggregateKeyType :: Lens' WAFv2WebACLRateBasedStatementOne (Val Text)
 wafwaclrbsoAggregateKeyType = lens _wAFv2WebACLRateBasedStatementOneAggregateKeyType (\s a -> s { _wAFv2WebACLRateBasedStatementOneAggregateKeyType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementone.html#cfn-wafv2-webacl-ratebasedstatementone-forwardedipconfig
+wafwaclrbsoForwardedIPConfig :: Lens' WAFv2WebACLRateBasedStatementOne (Maybe WAFv2WebACLForwardedIPConfiguration)
+wafwaclrbsoForwardedIPConfig = lens _wAFv2WebACLRateBasedStatementOneForwardedIPConfig (\s a -> s { _wAFv2WebACLRateBasedStatementOneForwardedIPConfig = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementone.html#cfn-wafv2-webacl-ratebasedstatementone-limit
 wafwaclrbsoLimit :: Lens' WAFv2WebACLRateBasedStatementOne (Val Integer)
diff --git a/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLRateBasedStatementTwo.hs b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLRateBasedStatementTwo.hs
--- a/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLRateBasedStatementTwo.hs
+++ b/library-gen/Stratosphere/ResourceProperties/WAFv2WebACLRateBasedStatementTwo.hs
@@ -8,6 +8,7 @@
 module Stratosphere.ResourceProperties.WAFv2WebACLRateBasedStatementTwo where
 
 import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.WAFv2WebACLForwardedIPConfiguration
 import Stratosphere.ResourceProperties.WAFv2WebACLStatementThree
 
 -- | Full data type definition for WAFv2WebACLRateBasedStatementTwo. See
@@ -15,6 +16,7 @@
 data WAFv2WebACLRateBasedStatementTwo =
   WAFv2WebACLRateBasedStatementTwo
   { _wAFv2WebACLRateBasedStatementTwoAggregateKeyType :: Val Text
+  , _wAFv2WebACLRateBasedStatementTwoForwardedIPConfig :: Maybe WAFv2WebACLForwardedIPConfiguration
   , _wAFv2WebACLRateBasedStatementTwoLimit :: Val Integer
   , _wAFv2WebACLRateBasedStatementTwoScopeDownStatement :: Maybe WAFv2WebACLStatementThree
   } deriving (Show, Eq)
@@ -24,6 +26,7 @@
     object $
     catMaybes
     [ (Just . ("AggregateKeyType",) . toJSON) _wAFv2WebACLRateBasedStatementTwoAggregateKeyType
+    , fmap (("ForwardedIPConfig",) . toJSON) _wAFv2WebACLRateBasedStatementTwoForwardedIPConfig
     , (Just . ("Limit",) . toJSON) _wAFv2WebACLRateBasedStatementTwoLimit
     , fmap (("ScopeDownStatement",) . toJSON) _wAFv2WebACLRateBasedStatementTwoScopeDownStatement
     ]
@@ -37,6 +40,7 @@
 waFv2WebACLRateBasedStatementTwo aggregateKeyTypearg limitarg =
   WAFv2WebACLRateBasedStatementTwo
   { _wAFv2WebACLRateBasedStatementTwoAggregateKeyType = aggregateKeyTypearg
+  , _wAFv2WebACLRateBasedStatementTwoForwardedIPConfig = Nothing
   , _wAFv2WebACLRateBasedStatementTwoLimit = limitarg
   , _wAFv2WebACLRateBasedStatementTwoScopeDownStatement = Nothing
   }
@@ -44,6 +48,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementtwo.html#cfn-wafv2-webacl-ratebasedstatementtwo-aggregatekeytype
 wafwaclrbstAggregateKeyType :: Lens' WAFv2WebACLRateBasedStatementTwo (Val Text)
 wafwaclrbstAggregateKeyType = lens _wAFv2WebACLRateBasedStatementTwoAggregateKeyType (\s a -> s { _wAFv2WebACLRateBasedStatementTwoAggregateKeyType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementtwo.html#cfn-wafv2-webacl-ratebasedstatementtwo-forwardedipconfig
+wafwaclrbstForwardedIPConfig :: Lens' WAFv2WebACLRateBasedStatementTwo (Maybe WAFv2WebACLForwardedIPConfiguration)
+wafwaclrbstForwardedIPConfig = lens _wAFv2WebACLRateBasedStatementTwoForwardedIPConfig (\s a -> s { _wAFv2WebACLRateBasedStatementTwoForwardedIPConfig = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatementtwo.html#cfn-wafv2-webacl-ratebasedstatementtwo-limit
 wafwaclrbstLimit :: Lens' WAFv2WebACLRateBasedStatementTwo (Val Integer)
diff --git a/library-gen/Stratosphere/Resources.hs b/library-gen/Stratosphere/Resources.hs
--- a/library-gen/Stratosphere/Resources.hs
+++ b/library-gen/Stratosphere/Resources.hs
@@ -74,6 +74,7 @@
 import Stratosphere.Resources.ApiGatewayUsagePlanKey as X
 import Stratosphere.Resources.ApiGatewayVpcLink as X
 import Stratosphere.Resources.ApiGatewayV2Api as X
+import Stratosphere.Resources.ApiGatewayV2ApiGatewayManagedOverrides as X
 import Stratosphere.Resources.ApiGatewayV2ApiMapping as X
 import Stratosphere.Resources.ApiGatewayV2Authorizer as X
 import Stratosphere.Resources.ApiGatewayV2Deployment as X
@@ -84,6 +85,7 @@
 import Stratosphere.Resources.ApiGatewayV2Route as X
 import Stratosphere.Resources.ApiGatewayV2RouteResponse as X
 import Stratosphere.Resources.ApiGatewayV2Stage as X
+import Stratosphere.Resources.ApiGatewayV2VpcLink as X
 import Stratosphere.Resources.AppConfigApplication as X
 import Stratosphere.Resources.AppConfigConfigurationProfile as X
 import Stratosphere.Resources.AppConfigDeployment as X
@@ -111,6 +113,7 @@
 import Stratosphere.Resources.AppSyncResolver as X
 import Stratosphere.Resources.ApplicationAutoScalingScalableTarget as X
 import Stratosphere.Resources.ApplicationAutoScalingScalingPolicy as X
+import Stratosphere.Resources.AthenaDataCatalog as X
 import Stratosphere.Resources.AthenaNamedQuery as X
 import Stratosphere.Resources.AthenaWorkGroup as X
 import Stratosphere.Resources.AutoScalingAutoScalingGroup as X
@@ -227,6 +230,7 @@
 import Stratosphere.Resources.EC2NetworkInterfaceAttachment as X
 import Stratosphere.Resources.EC2NetworkInterfacePermission as X
 import Stratosphere.Resources.EC2PlacementGroup as X
+import Stratosphere.Resources.EC2PrefixList as X
 import Stratosphere.Resources.EC2Route as X
 import Stratosphere.Resources.EC2RouteTable as X
 import Stratosphere.Resources.EC2SecurityGroup as X
@@ -470,6 +474,7 @@
 import Stratosphere.Resources.PinpointEmailDedicatedIpPool as X
 import Stratosphere.Resources.PinpointEmailIdentity as X
 import Stratosphere.Resources.QLDBLedger as X
+import Stratosphere.Resources.QLDBStream as X
 import Stratosphere.Resources.RAMResourceShare as X
 import Stratosphere.Resources.RDSDBCluster as X
 import Stratosphere.Resources.RDSDBClusterParameterGroup as X
@@ -593,8 +598,12 @@
 import Stratosphere.ResourceProperties.AccessAnalyzerAnalyzerFilter as X
 import Stratosphere.ResourceProperties.AmazonMQBrokerConfigurationId as X
 import Stratosphere.ResourceProperties.AmazonMQBrokerEncryptionOptions as X
+import Stratosphere.ResourceProperties.AmazonMQBrokerInterBrokerCred as X
+import Stratosphere.ResourceProperties.AmazonMQBrokerLdapMetadata as X
+import Stratosphere.ResourceProperties.AmazonMQBrokerLdapServerMetadata as X
 import Stratosphere.ResourceProperties.AmazonMQBrokerLogList as X
 import Stratosphere.ResourceProperties.AmazonMQBrokerMaintenanceWindow as X
+import Stratosphere.ResourceProperties.AmazonMQBrokerServerMetadata as X
 import Stratosphere.ResourceProperties.AmazonMQBrokerTagsEntry as X
 import Stratosphere.ResourceProperties.AmazonMQBrokerUser as X
 import Stratosphere.ResourceProperties.AmazonMQConfigurationTagsEntry as X
@@ -627,6 +636,11 @@
 import Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings as X
 import Stratosphere.ResourceProperties.ApiGatewayV2ApiBodyS3Location as X
 import Stratosphere.ResourceProperties.ApiGatewayV2ApiCors as X
+import Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings as X
+import Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides as X
+import Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides as X
+import Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesRouteSettings as X
+import Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesStageOverrides as X
 import Stratosphere.ResourceProperties.ApiGatewayV2AuthorizerJWTConfiguration as X
 import Stratosphere.ResourceProperties.ApiGatewayV2DomainNameDomainNameConfiguration as X
 import Stratosphere.ResourceProperties.ApiGatewayV2IntegrationTlsConfig as X
@@ -650,16 +664,19 @@
 import Stratosphere.ResourceProperties.AppMeshRouteGrpcRouteMatch as X
 import Stratosphere.ResourceProperties.AppMeshRouteGrpcRouteMetadata as X
 import Stratosphere.ResourceProperties.AppMeshRouteGrpcRouteMetadataMatchMethod as X
+import Stratosphere.ResourceProperties.AppMeshRouteGrpcTimeout as X
 import Stratosphere.ResourceProperties.AppMeshRouteHeaderMatchMethod as X
 import Stratosphere.ResourceProperties.AppMeshRouteHttpRetryPolicy as X
 import Stratosphere.ResourceProperties.AppMeshRouteHttpRoute as X
 import Stratosphere.ResourceProperties.AppMeshRouteHttpRouteAction as X
 import Stratosphere.ResourceProperties.AppMeshRouteHttpRouteHeader as X
 import Stratosphere.ResourceProperties.AppMeshRouteHttpRouteMatch as X
+import Stratosphere.ResourceProperties.AppMeshRouteHttpTimeout as X
 import Stratosphere.ResourceProperties.AppMeshRouteMatchRange as X
 import Stratosphere.ResourceProperties.AppMeshRouteRouteSpec as X
 import Stratosphere.ResourceProperties.AppMeshRouteTcpRoute as X
 import Stratosphere.ResourceProperties.AppMeshRouteTcpRouteAction as X
+import Stratosphere.ResourceProperties.AppMeshRouteTcpTimeout as X
 import Stratosphere.ResourceProperties.AppMeshRouteWeightedTarget as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeAccessLog as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeAwsCloudMapInstanceAttribute as X
@@ -669,9 +686,13 @@
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeClientPolicy as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeClientPolicyTls as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeDnsServiceDiscovery as X
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeDuration as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeFileAccessLog as X
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeGrpcTimeout as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeHealthCheck as X
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeHttpTimeout as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeListener as X
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTimeout as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTls as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTlsAcmCertificate as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTlsCertificate as X
@@ -679,6 +700,7 @@
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeLogging as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodePortMapping as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeServiceDiscovery as X
+import Stratosphere.ResourceProperties.AppMeshVirtualNodeTcpTimeout as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeTlsValidationContext as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeTlsValidationContextAcmTrust as X
 import Stratosphere.ResourceProperties.AppMeshVirtualNodeTlsValidationContextFileTrust as X
@@ -730,6 +752,7 @@
 import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepAdjustment as X
 import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration as X
 import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyTargetTrackingScalingPolicyConfiguration as X
+import Stratosphere.ResourceProperties.AthenaDataCatalogTags as X
 import Stratosphere.ResourceProperties.AthenaWorkGroupEncryptionConfiguration as X
 import Stratosphere.ResourceProperties.AthenaWorkGroupResultConfiguration as X
 import Stratosphere.ResourceProperties.AthenaWorkGroupResultConfigurationUpdates as X
@@ -833,6 +856,7 @@
 import Stratosphere.ResourceProperties.CloudWatchAnomalyDetectorDimension as X
 import Stratosphere.ResourceProperties.CloudWatchAnomalyDetectorRange as X
 import Stratosphere.ResourceProperties.CodeBuildProjectArtifacts as X
+import Stratosphere.ResourceProperties.CodeBuildProjectBuildStatusConfig as X
 import Stratosphere.ResourceProperties.CodeBuildProjectCloudWatchLogsConfig as X
 import Stratosphere.ResourceProperties.CodeBuildProjectEnvironment as X
 import Stratosphere.ResourceProperties.CodeBuildProjectEnvironmentVariable as X
@@ -1032,6 +1056,7 @@
 import Stratosphere.ResourceProperties.EC2NetworkAclEntryPortRange as X
 import Stratosphere.ResourceProperties.EC2NetworkInterfaceInstanceIpv6Address as X
 import Stratosphere.ResourceProperties.EC2NetworkInterfacePrivateIpAddressSpecification as X
+import Stratosphere.ResourceProperties.EC2PrefixListEntry as X
 import Stratosphere.ResourceProperties.EC2SecurityGroupEgressProperty as X
 import Stratosphere.ResourceProperties.EC2SecurityGroupIngressProperty as X
 import Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMapping as X
@@ -1103,6 +1128,7 @@
 import Stratosphere.ResourceProperties.EFSAccessPointCreationInfo as X
 import Stratosphere.ResourceProperties.EFSAccessPointPosixUser as X
 import Stratosphere.ResourceProperties.EFSAccessPointRootDirectory as X
+import Stratosphere.ResourceProperties.EFSFileSystemBackupPolicy as X
 import Stratosphere.ResourceProperties.EFSFileSystemElasticFileSystemTag as X
 import Stratosphere.ResourceProperties.EFSFileSystemLifecyclePolicy as X
 import Stratosphere.ResourceProperties.EKSClusterEncryptionConfig as X
@@ -1206,11 +1232,14 @@
 import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupMatcher as X
 import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetDescription as X
 import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetGroupAttribute as X
+import Stratosphere.ResourceProperties.ElasticsearchDomainAdvancedSecurityOptionsInput as X
 import Stratosphere.ResourceProperties.ElasticsearchDomainCognitoOptions as X
+import Stratosphere.ResourceProperties.ElasticsearchDomainDomainEndpointOptions as X
 import Stratosphere.ResourceProperties.ElasticsearchDomainEBSOptions as X
 import Stratosphere.ResourceProperties.ElasticsearchDomainElasticsearchClusterConfig as X
 import Stratosphere.ResourceProperties.ElasticsearchDomainEncryptionAtRestOptions as X
 import Stratosphere.ResourceProperties.ElasticsearchDomainLogPublishingOption as X
+import Stratosphere.ResourceProperties.ElasticsearchDomainMasterUserOptions as X
 import Stratosphere.ResourceProperties.ElasticsearchDomainNodeToNodeEncryptionOptions as X
 import Stratosphere.ResourceProperties.ElasticsearchDomainSnapshotOptions as X
 import Stratosphere.ResourceProperties.ElasticsearchDomainVPCOptions as X
@@ -1570,6 +1599,7 @@
 import Stratosphere.ResourceProperties.LambdaFunctionCode as X
 import Stratosphere.ResourceProperties.LambdaFunctionDeadLetterConfig as X
 import Stratosphere.ResourceProperties.LambdaFunctionEnvironment as X
+import Stratosphere.ResourceProperties.LambdaFunctionFileSystemConfig as X
 import Stratosphere.ResourceProperties.LambdaFunctionTracingConfig as X
 import Stratosphere.ResourceProperties.LambdaFunctionVpcConfig as X
 import Stratosphere.ResourceProperties.LambdaLayerVersionContent as X
@@ -1705,6 +1735,7 @@
 import Stratosphere.ResourceProperties.PinpointEmailDedicatedIpPoolTags as X
 import Stratosphere.ResourceProperties.PinpointEmailIdentityMailFromAttributes as X
 import Stratosphere.ResourceProperties.PinpointEmailIdentityTags as X
+import Stratosphere.ResourceProperties.QLDBStreamKinesisConfiguration as X
 import Stratosphere.ResourceProperties.RDSDBClusterDBClusterRole as X
 import Stratosphere.ResourceProperties.RDSDBClusterScalingConfiguration as X
 import Stratosphere.ResourceProperties.RDSDBInstanceDBInstanceRole as X
@@ -1830,6 +1861,9 @@
 import Stratosphere.ResourceProperties.SSMResourceDataSyncSyncSource as X
 import Stratosphere.ResourceProperties.SageMakerCodeRepositoryGitConfig as X
 import Stratosphere.ResourceProperties.SageMakerEndpointVariantProperty as X
+import Stratosphere.ResourceProperties.SageMakerEndpointConfigCaptureContentTypeHeader as X
+import Stratosphere.ResourceProperties.SageMakerEndpointConfigCaptureOption as X
+import Stratosphere.ResourceProperties.SageMakerEndpointConfigDataCaptureConfig as X
 import Stratosphere.ResourceProperties.SageMakerEndpointConfigProductionVariant as X
 import Stratosphere.ResourceProperties.SageMakerModelContainerDefinition as X
 import Stratosphere.ResourceProperties.SageMakerModelVpcConfig as X
@@ -1837,6 +1871,7 @@
 import Stratosphere.ResourceProperties.SageMakerWorkteamCognitoMemberDefinition as X
 import Stratosphere.ResourceProperties.SageMakerWorkteamMemberDefinition as X
 import Stratosphere.ResourceProperties.SageMakerWorkteamNotificationConfiguration as X
+import Stratosphere.ResourceProperties.SecretsManagerRotationScheduleHostedRotationLambda as X
 import Stratosphere.ResourceProperties.SecretsManagerRotationScheduleRotationRules as X
 import Stratosphere.ResourceProperties.SecretsManagerSecretGenerateSecretString as X
 import Stratosphere.ResourceProperties.ServiceCatalogCloudFormationProductProvisioningArtifactProperties as X
@@ -1852,6 +1887,7 @@
 import Stratosphere.ResourceProperties.StepFunctionsStateMachineLoggingConfiguration as X
 import Stratosphere.ResourceProperties.StepFunctionsStateMachineS3Location as X
 import Stratosphere.ResourceProperties.StepFunctionsStateMachineTagsEntry as X
+import Stratosphere.ResourceProperties.StepFunctionsStateMachineTracingConfiguration as X
 import Stratosphere.ResourceProperties.SyntheticsCanaryCode as X
 import Stratosphere.ResourceProperties.SyntheticsCanaryRunConfig as X
 import Stratosphere.ResourceProperties.SyntheticsCanarySchedule as X
@@ -1889,7 +1925,9 @@
 import Stratosphere.ResourceProperties.WAFv2RuleGroupAndStatementTwo as X
 import Stratosphere.ResourceProperties.WAFv2RuleGroupByteMatchStatement as X
 import Stratosphere.ResourceProperties.WAFv2RuleGroupFieldToMatch as X
+import Stratosphere.ResourceProperties.WAFv2RuleGroupForwardedIPConfiguration as X
 import Stratosphere.ResourceProperties.WAFv2RuleGroupGeoMatchStatement as X
+import Stratosphere.ResourceProperties.WAFv2RuleGroupIPSetForwardedIPConfiguration as X
 import Stratosphere.ResourceProperties.WAFv2RuleGroupIPSetReferenceStatement as X
 import Stratosphere.ResourceProperties.WAFv2RuleGroupNotStatementOne as X
 import Stratosphere.ResourceProperties.WAFv2RuleGroupNotStatementTwo as X
@@ -1914,7 +1952,9 @@
 import Stratosphere.ResourceProperties.WAFv2WebACLDefaultAction as X
 import Stratosphere.ResourceProperties.WAFv2WebACLExcludedRule as X
 import Stratosphere.ResourceProperties.WAFv2WebACLFieldToMatch as X
+import Stratosphere.ResourceProperties.WAFv2WebACLForwardedIPConfiguration as X
 import Stratosphere.ResourceProperties.WAFv2WebACLGeoMatchStatement as X
+import Stratosphere.ResourceProperties.WAFv2WebACLIPSetForwardedIPConfiguration as X
 import Stratosphere.ResourceProperties.WAFv2WebACLIPSetReferenceStatement as X
 import Stratosphere.ResourceProperties.WAFv2WebACLManagedRuleGroupStatement as X
 import Stratosphere.ResourceProperties.WAFv2WebACLNotStatementOne as X
diff --git a/library-gen/Stratosphere/Resources/AmazonMQBroker.hs b/library-gen/Stratosphere/Resources/AmazonMQBroker.hs
--- a/library-gen/Stratosphere/Resources/AmazonMQBroker.hs
+++ b/library-gen/Stratosphere/Resources/AmazonMQBroker.hs
@@ -10,6 +10,8 @@
 import Stratosphere.ResourceImports
 import Stratosphere.ResourceProperties.AmazonMQBrokerConfigurationId
 import Stratosphere.ResourceProperties.AmazonMQBrokerEncryptionOptions
+import Stratosphere.ResourceProperties.AmazonMQBrokerLdapMetadata
+import Stratosphere.ResourceProperties.AmazonMQBrokerLdapServerMetadata
 import Stratosphere.ResourceProperties.AmazonMQBrokerLogList
 import Stratosphere.ResourceProperties.AmazonMQBrokerMaintenanceWindow
 import Stratosphere.ResourceProperties.AmazonMQBrokerTagsEntry
@@ -19,7 +21,8 @@
 -- more convenient constructor.
 data AmazonMQBroker =
   AmazonMQBroker
-  { _amazonMQBrokerAutoMinorVersionUpgrade :: Val Bool
+  { _amazonMQBrokerAuthenticationStrategy :: Maybe (Val Text)
+  , _amazonMQBrokerAutoMinorVersionUpgrade :: Val Bool
   , _amazonMQBrokerBrokerName :: Val Text
   , _amazonMQBrokerConfiguration :: Maybe AmazonMQBrokerConfigurationId
   , _amazonMQBrokerDeploymentMode :: Val Text
@@ -27,6 +30,8 @@
   , _amazonMQBrokerEngineType :: Val Text
   , _amazonMQBrokerEngineVersion :: Val Text
   , _amazonMQBrokerHostInstanceType :: Val Text
+  , _amazonMQBrokerLdapMetadata :: Maybe AmazonMQBrokerLdapMetadata
+  , _amazonMQBrokerLdapServerMetadata :: Maybe AmazonMQBrokerLdapServerMetadata
   , _amazonMQBrokerLogs :: Maybe AmazonMQBrokerLogList
   , _amazonMQBrokerMaintenanceWindowStartTime :: Maybe AmazonMQBrokerMaintenanceWindow
   , _amazonMQBrokerPubliclyAccessible :: Val Bool
@@ -43,7 +48,8 @@
     { resourcePropertiesType = "AWS::AmazonMQ::Broker"
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
-        [ (Just . ("AutoMinorVersionUpgrade",) . toJSON) _amazonMQBrokerAutoMinorVersionUpgrade
+        [ fmap (("AuthenticationStrategy",) . toJSON) _amazonMQBrokerAuthenticationStrategy
+        , (Just . ("AutoMinorVersionUpgrade",) . toJSON) _amazonMQBrokerAutoMinorVersionUpgrade
         , (Just . ("BrokerName",) . toJSON) _amazonMQBrokerBrokerName
         , fmap (("Configuration",) . toJSON) _amazonMQBrokerConfiguration
         , (Just . ("DeploymentMode",) . toJSON) _amazonMQBrokerDeploymentMode
@@ -51,6 +57,8 @@
         , (Just . ("EngineType",) . toJSON) _amazonMQBrokerEngineType
         , (Just . ("EngineVersion",) . toJSON) _amazonMQBrokerEngineVersion
         , (Just . ("HostInstanceType",) . toJSON) _amazonMQBrokerHostInstanceType
+        , fmap (("LdapMetadata",) . toJSON) _amazonMQBrokerLdapMetadata
+        , fmap (("LdapServerMetadata",) . toJSON) _amazonMQBrokerLdapServerMetadata
         , fmap (("Logs",) . toJSON) _amazonMQBrokerLogs
         , fmap (("MaintenanceWindowStartTime",) . toJSON) _amazonMQBrokerMaintenanceWindowStartTime
         , (Just . ("PubliclyAccessible",) . toJSON) _amazonMQBrokerPubliclyAccessible
@@ -75,7 +83,8 @@
   -> AmazonMQBroker
 amazonMQBroker autoMinorVersionUpgradearg brokerNamearg deploymentModearg engineTypearg engineVersionarg hostInstanceTypearg publiclyAccessiblearg usersarg =
   AmazonMQBroker
-  { _amazonMQBrokerAutoMinorVersionUpgrade = autoMinorVersionUpgradearg
+  { _amazonMQBrokerAuthenticationStrategy = Nothing
+  , _amazonMQBrokerAutoMinorVersionUpgrade = autoMinorVersionUpgradearg
   , _amazonMQBrokerBrokerName = brokerNamearg
   , _amazonMQBrokerConfiguration = Nothing
   , _amazonMQBrokerDeploymentMode = deploymentModearg
@@ -83,6 +92,8 @@
   , _amazonMQBrokerEngineType = engineTypearg
   , _amazonMQBrokerEngineVersion = engineVersionarg
   , _amazonMQBrokerHostInstanceType = hostInstanceTypearg
+  , _amazonMQBrokerLdapMetadata = Nothing
+  , _amazonMQBrokerLdapServerMetadata = Nothing
   , _amazonMQBrokerLogs = Nothing
   , _amazonMQBrokerMaintenanceWindowStartTime = Nothing
   , _amazonMQBrokerPubliclyAccessible = publiclyAccessiblearg
@@ -93,6 +104,10 @@
   , _amazonMQBrokerUsers = usersarg
   }
 
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-authenticationstrategy
+amqbAuthenticationStrategy :: Lens' AmazonMQBroker (Maybe (Val Text))
+amqbAuthenticationStrategy = lens _amazonMQBrokerAuthenticationStrategy (\s a -> s { _amazonMQBrokerAuthenticationStrategy = a })
+
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-autominorversionupgrade
 amqbAutoMinorVersionUpgrade :: Lens' AmazonMQBroker (Val Bool)
 amqbAutoMinorVersionUpgrade = lens _amazonMQBrokerAutoMinorVersionUpgrade (\s a -> s { _amazonMQBrokerAutoMinorVersionUpgrade = a })
@@ -124,6 +139,14 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-hostinstancetype
 amqbHostInstanceType :: Lens' AmazonMQBroker (Val Text)
 amqbHostInstanceType = lens _amazonMQBrokerHostInstanceType (\s a -> s { _amazonMQBrokerHostInstanceType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-ldapmetadata
+amqbLdapMetadata :: Lens' AmazonMQBroker (Maybe AmazonMQBrokerLdapMetadata)
+amqbLdapMetadata = lens _amazonMQBrokerLdapMetadata (\s a -> s { _amazonMQBrokerLdapMetadata = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-ldapservermetadata
+amqbLdapServerMetadata :: Lens' AmazonMQBroker (Maybe AmazonMQBrokerLdapServerMetadata)
+amqbLdapServerMetadata = lens _amazonMQBrokerLdapServerMetadata (\s a -> s { _amazonMQBrokerLdapServerMetadata = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html#cfn-amazonmq-broker-logs
 amqbLogs :: Lens' AmazonMQBroker (Maybe AmazonMQBrokerLogList)
diff --git a/library-gen/Stratosphere/Resources/AmplifyApp.hs b/library-gen/Stratosphere/Resources/AmplifyApp.hs
--- a/library-gen/Stratosphere/Resources/AmplifyApp.hs
+++ b/library-gen/Stratosphere/Resources/AmplifyApp.hs
@@ -24,6 +24,7 @@
   , _amplifyAppBuildSpec :: Maybe (Val Text)
   , _amplifyAppCustomRules :: Maybe [AmplifyAppCustomRule]
   , _amplifyAppDescription :: Maybe (Val Text)
+  , _amplifyAppEnableBranchAutoDeletion :: Maybe (Val Bool)
   , _amplifyAppEnvironmentVariables :: Maybe [AmplifyAppEnvironmentVariable]
   , _amplifyAppIAMServiceRole :: Maybe (Val Text)
   , _amplifyAppName :: Val Text
@@ -44,6 +45,7 @@
         , fmap (("BuildSpec",) . toJSON) _amplifyAppBuildSpec
         , fmap (("CustomRules",) . toJSON) _amplifyAppCustomRules
         , fmap (("Description",) . toJSON) _amplifyAppDescription
+        , fmap (("EnableBranchAutoDeletion",) . toJSON) _amplifyAppEnableBranchAutoDeletion
         , fmap (("EnvironmentVariables",) . toJSON) _amplifyAppEnvironmentVariables
         , fmap (("IAMServiceRole",) . toJSON) _amplifyAppIAMServiceRole
         , (Just . ("Name",) . toJSON) _amplifyAppName
@@ -65,6 +67,7 @@
   , _amplifyAppBuildSpec = Nothing
   , _amplifyAppCustomRules = Nothing
   , _amplifyAppDescription = Nothing
+  , _amplifyAppEnableBranchAutoDeletion = Nothing
   , _amplifyAppEnvironmentVariables = Nothing
   , _amplifyAppIAMServiceRole = Nothing
   , _amplifyAppName = namearg
@@ -96,6 +99,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-description
 aaDescription :: Lens' AmplifyApp (Maybe (Val Text))
 aaDescription = lens _amplifyAppDescription (\s a -> s { _amplifyAppDescription = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-enablebranchautodeletion
+aaEnableBranchAutoDeletion :: Lens' AmplifyApp (Maybe (Val Bool))
+aaEnableBranchAutoDeletion = lens _amplifyAppEnableBranchAutoDeletion (\s a -> s { _amplifyAppEnableBranchAutoDeletion = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html#cfn-amplify-app-environmentvariables
 aaEnvironmentVariables :: Lens' AmplifyApp (Maybe [AmplifyAppEnvironmentVariable])
diff --git a/library-gen/Stratosphere/Resources/AmplifyDomain.hs b/library-gen/Stratosphere/Resources/AmplifyDomain.hs
--- a/library-gen/Stratosphere/Resources/AmplifyDomain.hs
+++ b/library-gen/Stratosphere/Resources/AmplifyDomain.hs
@@ -15,7 +15,10 @@
 data AmplifyDomain =
   AmplifyDomain
   { _amplifyDomainAppId :: Val Text
+  , _amplifyDomainAutoSubDomainCreationPatterns :: Maybe (ValList Text)
+  , _amplifyDomainAutoSubDomainIAMRole :: Maybe (Val Text)
   , _amplifyDomainDomainName :: Val Text
+  , _amplifyDomainEnableAutoSubDomain :: Maybe (Val Bool)
   , _amplifyDomainSubDomainSettings :: [AmplifyDomainSubDomainSetting]
   } deriving (Show, Eq)
 
@@ -26,7 +29,10 @@
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
         [ (Just . ("AppId",) . toJSON) _amplifyDomainAppId
+        , fmap (("AutoSubDomainCreationPatterns",) . toJSON) _amplifyDomainAutoSubDomainCreationPatterns
+        , fmap (("AutoSubDomainIAMRole",) . toJSON) _amplifyDomainAutoSubDomainIAMRole
         , (Just . ("DomainName",) . toJSON) _amplifyDomainDomainName
+        , fmap (("EnableAutoSubDomain",) . toJSON) _amplifyDomainEnableAutoSubDomain
         , (Just . ("SubDomainSettings",) . toJSON) _amplifyDomainSubDomainSettings
         ]
     }
@@ -40,7 +46,10 @@
 amplifyDomain appIdarg domainNamearg subDomainSettingsarg =
   AmplifyDomain
   { _amplifyDomainAppId = appIdarg
+  , _amplifyDomainAutoSubDomainCreationPatterns = Nothing
+  , _amplifyDomainAutoSubDomainIAMRole = Nothing
   , _amplifyDomainDomainName = domainNamearg
+  , _amplifyDomainEnableAutoSubDomain = Nothing
   , _amplifyDomainSubDomainSettings = subDomainSettingsarg
   }
 
@@ -48,9 +57,21 @@
 adAppId :: Lens' AmplifyDomain (Val Text)
 adAppId = lens _amplifyDomainAppId (\s a -> s { _amplifyDomainAppId = a })
 
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-autosubdomaincreationpatterns
+adAutoSubDomainCreationPatterns :: Lens' AmplifyDomain (Maybe (ValList Text))
+adAutoSubDomainCreationPatterns = lens _amplifyDomainAutoSubDomainCreationPatterns (\s a -> s { _amplifyDomainAutoSubDomainCreationPatterns = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-autosubdomainiamrole
+adAutoSubDomainIAMRole :: Lens' AmplifyDomain (Maybe (Val Text))
+adAutoSubDomainIAMRole = lens _amplifyDomainAutoSubDomainIAMRole (\s a -> s { _amplifyDomainAutoSubDomainIAMRole = a })
+
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-domainname
 adDomainName :: Lens' AmplifyDomain (Val Text)
 adDomainName = lens _amplifyDomainDomainName (\s a -> s { _amplifyDomainDomainName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-enableautosubdomain
+adEnableAutoSubDomain :: Lens' AmplifyDomain (Maybe (Val Bool))
+adEnableAutoSubDomain = lens _amplifyDomainEnableAutoSubDomain (\s a -> s { _amplifyDomainEnableAutoSubDomain = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html#cfn-amplify-domain-subdomainsettings
 adSubDomainSettings :: Lens' AmplifyDomain [AmplifyDomainSubDomainSetting]
diff --git a/library-gen/Stratosphere/Resources/ApiGatewayV2ApiGatewayManagedOverrides.hs b/library-gen/Stratosphere/Resources/ApiGatewayV2ApiGatewayManagedOverrides.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/Resources/ApiGatewayV2ApiGatewayManagedOverrides.hs
@@ -0,0 +1,66 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apigatewaymanagedoverrides.html
+
+module Stratosphere.Resources.ApiGatewayV2ApiGatewayManagedOverrides where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides
+import Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides
+import Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesStageOverrides
+
+-- | Full data type definition for ApiGatewayV2ApiGatewayManagedOverrides. See
+-- 'apiGatewayV2ApiGatewayManagedOverrides' for a more convenient
+-- constructor.
+data ApiGatewayV2ApiGatewayManagedOverrides =
+  ApiGatewayV2ApiGatewayManagedOverrides
+  { _apiGatewayV2ApiGatewayManagedOverridesApiId :: Val Text
+  , _apiGatewayV2ApiGatewayManagedOverridesIntegration :: Maybe ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides
+  , _apiGatewayV2ApiGatewayManagedOverridesRoute :: Maybe ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides
+  , _apiGatewayV2ApiGatewayManagedOverridesStage :: Maybe ApiGatewayV2ApiGatewayManagedOverridesStageOverrides
+  } deriving (Show, Eq)
+
+instance ToResourceProperties ApiGatewayV2ApiGatewayManagedOverrides where
+  toResourceProperties ApiGatewayV2ApiGatewayManagedOverrides{..} =
+    ResourceProperties
+    { resourcePropertiesType = "AWS::ApiGatewayV2::ApiGatewayManagedOverrides"
+    , resourcePropertiesProperties =
+        hashMapFromList $ catMaybes
+        [ (Just . ("ApiId",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesApiId
+        , fmap (("Integration",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesIntegration
+        , fmap (("Route",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesRoute
+        , fmap (("Stage",) . toJSON) _apiGatewayV2ApiGatewayManagedOverridesStage
+        ]
+    }
+
+-- | Constructor for 'ApiGatewayV2ApiGatewayManagedOverrides' containing
+-- required fields as arguments.
+apiGatewayV2ApiGatewayManagedOverrides
+  :: Val Text -- ^ 'agvagmoApiId'
+  -> ApiGatewayV2ApiGatewayManagedOverrides
+apiGatewayV2ApiGatewayManagedOverrides apiIdarg =
+  ApiGatewayV2ApiGatewayManagedOverrides
+  { _apiGatewayV2ApiGatewayManagedOverridesApiId = apiIdarg
+  , _apiGatewayV2ApiGatewayManagedOverridesIntegration = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesRoute = Nothing
+  , _apiGatewayV2ApiGatewayManagedOverridesStage = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apigatewaymanagedoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-apiid
+agvagmoApiId :: Lens' ApiGatewayV2ApiGatewayManagedOverrides (Val Text)
+agvagmoApiId = lens _apiGatewayV2ApiGatewayManagedOverridesApiId (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesApiId = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apigatewaymanagedoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-integration
+agvagmoIntegration :: Lens' ApiGatewayV2ApiGatewayManagedOverrides (Maybe ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides)
+agvagmoIntegration = lens _apiGatewayV2ApiGatewayManagedOverridesIntegration (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesIntegration = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apigatewaymanagedoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-route
+agvagmoRoute :: Lens' ApiGatewayV2ApiGatewayManagedOverrides (Maybe ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides)
+agvagmoRoute = lens _apiGatewayV2ApiGatewayManagedOverridesRoute (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesRoute = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apigatewaymanagedoverrides.html#cfn-apigatewayv2-apigatewaymanagedoverrides-stage
+agvagmoStage :: Lens' ApiGatewayV2ApiGatewayManagedOverrides (Maybe ApiGatewayV2ApiGatewayManagedOverridesStageOverrides)
+agvagmoStage = lens _apiGatewayV2ApiGatewayManagedOverridesStage (\s a -> s { _apiGatewayV2ApiGatewayManagedOverridesStage = a })
diff --git a/library-gen/Stratosphere/Resources/ApiGatewayV2VpcLink.hs b/library-gen/Stratosphere/Resources/ApiGatewayV2VpcLink.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/Resources/ApiGatewayV2VpcLink.hs
@@ -0,0 +1,64 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-vpclink.html
+
+module Stratosphere.Resources.ApiGatewayV2VpcLink where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ApiGatewayV2VpcLink. See
+-- 'apiGatewayV2VpcLink' for a more convenient constructor.
+data ApiGatewayV2VpcLink =
+  ApiGatewayV2VpcLink
+  { _apiGatewayV2VpcLinkName :: Val Text
+  , _apiGatewayV2VpcLinkSecurityGroupIds :: Maybe (ValList Text)
+  , _apiGatewayV2VpcLinkSubnetIds :: ValList Text
+  , _apiGatewayV2VpcLinkTags :: Maybe Object
+  } deriving (Show, Eq)
+
+instance ToResourceProperties ApiGatewayV2VpcLink where
+  toResourceProperties ApiGatewayV2VpcLink{..} =
+    ResourceProperties
+    { resourcePropertiesType = "AWS::ApiGatewayV2::VpcLink"
+    , resourcePropertiesProperties =
+        hashMapFromList $ catMaybes
+        [ (Just . ("Name",) . toJSON) _apiGatewayV2VpcLinkName
+        , fmap (("SecurityGroupIds",) . toJSON) _apiGatewayV2VpcLinkSecurityGroupIds
+        , (Just . ("SubnetIds",) . toJSON) _apiGatewayV2VpcLinkSubnetIds
+        , fmap (("Tags",) . toJSON) _apiGatewayV2VpcLinkTags
+        ]
+    }
+
+-- | Constructor for 'ApiGatewayV2VpcLink' containing required fields as
+-- arguments.
+apiGatewayV2VpcLink
+  :: Val Text -- ^ 'agvvlName'
+  -> ValList Text -- ^ 'agvvlSubnetIds'
+  -> ApiGatewayV2VpcLink
+apiGatewayV2VpcLink namearg subnetIdsarg =
+  ApiGatewayV2VpcLink
+  { _apiGatewayV2VpcLinkName = namearg
+  , _apiGatewayV2VpcLinkSecurityGroupIds = Nothing
+  , _apiGatewayV2VpcLinkSubnetIds = subnetIdsarg
+  , _apiGatewayV2VpcLinkTags = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-vpclink.html#cfn-apigatewayv2-vpclink-name
+agvvlName :: Lens' ApiGatewayV2VpcLink (Val Text)
+agvvlName = lens _apiGatewayV2VpcLinkName (\s a -> s { _apiGatewayV2VpcLinkName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-vpclink.html#cfn-apigatewayv2-vpclink-securitygroupids
+agvvlSecurityGroupIds :: Lens' ApiGatewayV2VpcLink (Maybe (ValList Text))
+agvvlSecurityGroupIds = lens _apiGatewayV2VpcLinkSecurityGroupIds (\s a -> s { _apiGatewayV2VpcLinkSecurityGroupIds = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-vpclink.html#cfn-apigatewayv2-vpclink-subnetids
+agvvlSubnetIds :: Lens' ApiGatewayV2VpcLink (ValList Text)
+agvvlSubnetIds = lens _apiGatewayV2VpcLinkSubnetIds (\s a -> s { _apiGatewayV2VpcLinkSubnetIds = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-vpclink.html#cfn-apigatewayv2-vpclink-tags
+agvvlTags :: Lens' ApiGatewayV2VpcLink (Maybe Object)
+agvvlTags = lens _apiGatewayV2VpcLinkTags (\s a -> s { _apiGatewayV2VpcLinkTags = a })
diff --git a/library-gen/Stratosphere/Resources/AthenaDataCatalog.hs b/library-gen/Stratosphere/Resources/AthenaDataCatalog.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/Resources/AthenaDataCatalog.hs
@@ -0,0 +1,71 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html
+
+module Stratosphere.Resources.AthenaDataCatalog where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.AthenaDataCatalogTags
+
+-- | Full data type definition for AthenaDataCatalog. See 'athenaDataCatalog'
+-- for a more convenient constructor.
+data AthenaDataCatalog =
+  AthenaDataCatalog
+  { _athenaDataCatalogDescription :: Maybe (Val Text)
+  , _athenaDataCatalogName :: Val Text
+  , _athenaDataCatalogParameters :: Maybe Object
+  , _athenaDataCatalogTags :: Maybe AthenaDataCatalogTags
+  , _athenaDataCatalogType :: Val Text
+  } deriving (Show, Eq)
+
+instance ToResourceProperties AthenaDataCatalog where
+  toResourceProperties AthenaDataCatalog{..} =
+    ResourceProperties
+    { resourcePropertiesType = "AWS::Athena::DataCatalog"
+    , resourcePropertiesProperties =
+        hashMapFromList $ catMaybes
+        [ fmap (("Description",) . toJSON) _athenaDataCatalogDescription
+        , (Just . ("Name",) . toJSON) _athenaDataCatalogName
+        , fmap (("Parameters",) . toJSON) _athenaDataCatalogParameters
+        , fmap (("Tags",) . toJSON) _athenaDataCatalogTags
+        , (Just . ("Type",) . toJSON) _athenaDataCatalogType
+        ]
+    }
+
+-- | Constructor for 'AthenaDataCatalog' containing required fields as
+-- arguments.
+athenaDataCatalog
+  :: Val Text -- ^ 'adcName'
+  -> Val Text -- ^ 'adcType'
+  -> AthenaDataCatalog
+athenaDataCatalog namearg typearg =
+  AthenaDataCatalog
+  { _athenaDataCatalogDescription = Nothing
+  , _athenaDataCatalogName = namearg
+  , _athenaDataCatalogParameters = Nothing
+  , _athenaDataCatalogTags = Nothing
+  , _athenaDataCatalogType = typearg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html#cfn-athena-datacatalog-description
+adcDescription :: Lens' AthenaDataCatalog (Maybe (Val Text))
+adcDescription = lens _athenaDataCatalogDescription (\s a -> s { _athenaDataCatalogDescription = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html#cfn-athena-datacatalog-name
+adcName :: Lens' AthenaDataCatalog (Val Text)
+adcName = lens _athenaDataCatalogName (\s a -> s { _athenaDataCatalogName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html#cfn-athena-datacatalog-parameters
+adcParameters :: Lens' AthenaDataCatalog (Maybe Object)
+adcParameters = lens _athenaDataCatalogParameters (\s a -> s { _athenaDataCatalogParameters = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html#cfn-athena-datacatalog-tags
+adcTags :: Lens' AthenaDataCatalog (Maybe AthenaDataCatalogTags)
+adcTags = lens _athenaDataCatalogTags (\s a -> s { _athenaDataCatalogTags = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html#cfn-athena-datacatalog-type
+adcType :: Lens' AthenaDataCatalog (Val Text)
+adcType = lens _athenaDataCatalogType (\s a -> s { _athenaDataCatalogType = a })
diff --git a/library-gen/Stratosphere/Resources/AutoScalingAutoScalingGroup.hs b/library-gen/Stratosphere/Resources/AutoScalingAutoScalingGroup.hs
--- a/library-gen/Stratosphere/Resources/AutoScalingAutoScalingGroup.hs
+++ b/library-gen/Stratosphere/Resources/AutoScalingAutoScalingGroup.hs
@@ -35,6 +35,7 @@
   , _autoScalingAutoScalingGroupMetricsCollection :: Maybe [AutoScalingAutoScalingGroupMetricsCollection]
   , _autoScalingAutoScalingGroupMinSize :: Val Text
   , _autoScalingAutoScalingGroupMixedInstancesPolicy :: Maybe AutoScalingAutoScalingGroupMixedInstancesPolicy
+  , _autoScalingAutoScalingGroupNewInstancesProtectedFromScaleIn :: Maybe (Val Bool)
   , _autoScalingAutoScalingGroupNotificationConfigurations :: Maybe [AutoScalingAutoScalingGroupNotificationConfiguration]
   , _autoScalingAutoScalingGroupPlacementGroup :: Maybe (Val Text)
   , _autoScalingAutoScalingGroupServiceLinkedRoleARN :: Maybe (Val Text)
@@ -66,6 +67,7 @@
         , fmap (("MetricsCollection",) . toJSON) _autoScalingAutoScalingGroupMetricsCollection
         , (Just . ("MinSize",) . toJSON) _autoScalingAutoScalingGroupMinSize
         , fmap (("MixedInstancesPolicy",) . toJSON) _autoScalingAutoScalingGroupMixedInstancesPolicy
+        , fmap (("NewInstancesProtectedFromScaleIn",) . toJSON) _autoScalingAutoScalingGroupNewInstancesProtectedFromScaleIn
         , fmap (("NotificationConfigurations",) . toJSON) _autoScalingAutoScalingGroupNotificationConfigurations
         , fmap (("PlacementGroup",) . toJSON) _autoScalingAutoScalingGroupPlacementGroup
         , fmap (("ServiceLinkedRoleARN",) . toJSON) _autoScalingAutoScalingGroupServiceLinkedRoleARN
@@ -100,6 +102,7 @@
   , _autoScalingAutoScalingGroupMetricsCollection = Nothing
   , _autoScalingAutoScalingGroupMinSize = minSizearg
   , _autoScalingAutoScalingGroupMixedInstancesPolicy = Nothing
+  , _autoScalingAutoScalingGroupNewInstancesProtectedFromScaleIn = Nothing
   , _autoScalingAutoScalingGroupNotificationConfigurations = Nothing
   , _autoScalingAutoScalingGroupPlacementGroup = Nothing
   , _autoScalingAutoScalingGroupServiceLinkedRoleARN = Nothing
@@ -172,6 +175,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-mixedinstancespolicy
 asasgMixedInstancesPolicy :: Lens' AutoScalingAutoScalingGroup (Maybe AutoScalingAutoScalingGroupMixedInstancesPolicy)
 asasgMixedInstancesPolicy = lens _autoScalingAutoScalingGroupMixedInstancesPolicy (\s a -> s { _autoScalingAutoScalingGroupMixedInstancesPolicy = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-newinstancesprotectedfromscalein
+asasgNewInstancesProtectedFromScaleIn :: Lens' AutoScalingAutoScalingGroup (Maybe (Val Bool))
+asasgNewInstancesProtectedFromScaleIn = lens _autoScalingAutoScalingGroupNewInstancesProtectedFromScaleIn (\s a -> s { _autoScalingAutoScalingGroupNewInstancesProtectedFromScaleIn = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-notificationconfigurations
 asasgNotificationConfigurations :: Lens' AutoScalingAutoScalingGroup (Maybe [AutoScalingAutoScalingGroupNotificationConfiguration])
diff --git a/library-gen/Stratosphere/Resources/CodeGuruProfilerProfilingGroup.hs b/library-gen/Stratosphere/Resources/CodeGuruProfilerProfilingGroup.hs
--- a/library-gen/Stratosphere/Resources/CodeGuruProfilerProfilingGroup.hs
+++ b/library-gen/Stratosphere/Resources/CodeGuruProfilerProfilingGroup.hs
@@ -15,6 +15,7 @@
 data CodeGuruProfilerProfilingGroup =
   CodeGuruProfilerProfilingGroup
   { _codeGuruProfilerProfilingGroupAgentPermissions :: Maybe Object
+  , _codeGuruProfilerProfilingGroupComputePlatform :: Maybe (Val Text)
   , _codeGuruProfilerProfilingGroupProfilingGroupName :: Val Text
   } deriving (Show, Eq)
 
@@ -25,6 +26,7 @@
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
         [ fmap (("AgentPermissions",) . toJSON) _codeGuruProfilerProfilingGroupAgentPermissions
+        , fmap (("ComputePlatform",) . toJSON) _codeGuruProfilerProfilingGroupComputePlatform
         , (Just . ("ProfilingGroupName",) . toJSON) _codeGuruProfilerProfilingGroupProfilingGroupName
         ]
     }
@@ -37,12 +39,17 @@
 codeGuruProfilerProfilingGroup profilingGroupNamearg =
   CodeGuruProfilerProfilingGroup
   { _codeGuruProfilerProfilingGroupAgentPermissions = Nothing
+  , _codeGuruProfilerProfilingGroupComputePlatform = Nothing
   , _codeGuruProfilerProfilingGroupProfilingGroupName = profilingGroupNamearg
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-agentpermissions
 cgppgAgentPermissions :: Lens' CodeGuruProfilerProfilingGroup (Maybe Object)
 cgppgAgentPermissions = lens _codeGuruProfilerProfilingGroupAgentPermissions (\s a -> s { _codeGuruProfilerProfilingGroupAgentPermissions = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-computeplatform
+cgppgComputePlatform :: Lens' CodeGuruProfilerProfilingGroup (Maybe (Val Text))
+cgppgComputePlatform = lens _codeGuruProfilerProfilingGroupComputePlatform (\s a -> s { _codeGuruProfilerProfilingGroupComputePlatform = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html#cfn-codeguruprofiler-profilinggroup-profilinggroupname
 cgppgProfilingGroupName :: Lens' CodeGuruProfilerProfilingGroup (Val Text)
diff --git a/library-gen/Stratosphere/Resources/CodeStarConnectionsConnection.hs b/library-gen/Stratosphere/Resources/CodeStarConnectionsConnection.hs
--- a/library-gen/Stratosphere/Resources/CodeStarConnectionsConnection.hs
+++ b/library-gen/Stratosphere/Resources/CodeStarConnectionsConnection.hs
@@ -15,7 +15,8 @@
 data CodeStarConnectionsConnection =
   CodeStarConnectionsConnection
   { _codeStarConnectionsConnectionConnectionName :: Val Text
-  , _codeStarConnectionsConnectionProviderType :: Val Text
+  , _codeStarConnectionsConnectionHostArn :: Maybe (Val Text)
+  , _codeStarConnectionsConnectionProviderType :: Maybe (Val Text)
   , _codeStarConnectionsConnectionTags :: Maybe [Tag]
   } deriving (Show, Eq)
 
@@ -26,7 +27,8 @@
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
         [ (Just . ("ConnectionName",) . toJSON) _codeStarConnectionsConnectionConnectionName
-        , (Just . ("ProviderType",) . toJSON) _codeStarConnectionsConnectionProviderType
+        , fmap (("HostArn",) . toJSON) _codeStarConnectionsConnectionHostArn
+        , fmap (("ProviderType",) . toJSON) _codeStarConnectionsConnectionProviderType
         , fmap (("Tags",) . toJSON) _codeStarConnectionsConnectionTags
         ]
     }
@@ -35,12 +37,12 @@
 -- fields as arguments.
 codeStarConnectionsConnection
   :: Val Text -- ^ 'csccConnectionName'
-  -> Val Text -- ^ 'csccProviderType'
   -> CodeStarConnectionsConnection
-codeStarConnectionsConnection connectionNamearg providerTypearg =
+codeStarConnectionsConnection connectionNamearg =
   CodeStarConnectionsConnection
   { _codeStarConnectionsConnectionConnectionName = connectionNamearg
-  , _codeStarConnectionsConnectionProviderType = providerTypearg
+  , _codeStarConnectionsConnectionHostArn = Nothing
+  , _codeStarConnectionsConnectionProviderType = Nothing
   , _codeStarConnectionsConnectionTags = Nothing
   }
 
@@ -48,8 +50,12 @@
 csccConnectionName :: Lens' CodeStarConnectionsConnection (Val Text)
 csccConnectionName = lens _codeStarConnectionsConnectionConnectionName (\s a -> s { _codeStarConnectionsConnectionConnectionName = a })
 
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html#cfn-codestarconnections-connection-hostarn
+csccHostArn :: Lens' CodeStarConnectionsConnection (Maybe (Val Text))
+csccHostArn = lens _codeStarConnectionsConnectionHostArn (\s a -> s { _codeStarConnectionsConnectionHostArn = a })
+
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html#cfn-codestarconnections-connection-providertype
-csccProviderType :: Lens' CodeStarConnectionsConnection (Val Text)
+csccProviderType :: Lens' CodeStarConnectionsConnection (Maybe (Val Text))
 csccProviderType = lens _codeStarConnectionsConnectionProviderType (\s a -> s { _codeStarConnectionsConnectionProviderType = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html#cfn-codestarconnections-connection-tags
diff --git a/library-gen/Stratosphere/Resources/DataPipelinePipeline.hs b/library-gen/Stratosphere/Resources/DataPipelinePipeline.hs
--- a/library-gen/Stratosphere/Resources/DataPipelinePipeline.hs
+++ b/library-gen/Stratosphere/Resources/DataPipelinePipeline.hs
@@ -9,6 +9,7 @@
 
 import Stratosphere.ResourceImports
 import Stratosphere.ResourceProperties.DataPipelinePipelineParameterObject
+import Stratosphere.ResourceProperties.DataPipelinePipelineParameterValue
 import Stratosphere.ResourceProperties.DataPipelinePipelinePipelineObject
 import Stratosphere.ResourceProperties.DataPipelinePipelinePipelineTag
 
@@ -20,6 +21,7 @@
   , _dataPipelinePipelineDescription :: Maybe (Val Text)
   , _dataPipelinePipelineName :: Val Text
   , _dataPipelinePipelineParameterObjects :: [DataPipelinePipelineParameterObject]
+  , _dataPipelinePipelineParameterValues :: Maybe [DataPipelinePipelineParameterValue]
   , _dataPipelinePipelinePipelineObjects :: Maybe [DataPipelinePipelinePipelineObject]
   , _dataPipelinePipelinePipelineTags :: Maybe [DataPipelinePipelinePipelineTag]
   } deriving (Show, Eq)
@@ -34,6 +36,7 @@
         , fmap (("Description",) . toJSON) _dataPipelinePipelineDescription
         , (Just . ("Name",) . toJSON) _dataPipelinePipelineName
         , (Just . ("ParameterObjects",) . toJSON) _dataPipelinePipelineParameterObjects
+        , fmap (("ParameterValues",) . toJSON) _dataPipelinePipelineParameterValues
         , fmap (("PipelineObjects",) . toJSON) _dataPipelinePipelinePipelineObjects
         , fmap (("PipelineTags",) . toJSON) _dataPipelinePipelinePipelineTags
         ]
@@ -51,6 +54,7 @@
   , _dataPipelinePipelineDescription = Nothing
   , _dataPipelinePipelineName = namearg
   , _dataPipelinePipelineParameterObjects = parameterObjectsarg
+  , _dataPipelinePipelineParameterValues = Nothing
   , _dataPipelinePipelinePipelineObjects = Nothing
   , _dataPipelinePipelinePipelineTags = Nothing
   }
@@ -70,6 +74,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-parameterobjects
 dppParameterObjects :: Lens' DataPipelinePipeline [DataPipelinePipelineParameterObject]
 dppParameterObjects = lens _dataPipelinePipelineParameterObjects (\s a -> s { _dataPipelinePipelineParameterObjects = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-parametervalues
+dppParameterValues :: Lens' DataPipelinePipeline (Maybe [DataPipelinePipelineParameterValue])
+dppParameterValues = lens _dataPipelinePipelineParameterValues (\s a -> s { _dataPipelinePipelineParameterValues = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-pipelineobjects
 dppPipelineObjects :: Lens' DataPipelinePipeline (Maybe [DataPipelinePipelinePipelineObject])
diff --git a/library-gen/Stratosphere/Resources/EC2FlowLog.hs b/library-gen/Stratosphere/Resources/EC2FlowLog.hs
--- a/library-gen/Stratosphere/Resources/EC2FlowLog.hs
+++ b/library-gen/Stratosphere/Resources/EC2FlowLog.hs
@@ -8,7 +8,7 @@
 module Stratosphere.Resources.EC2FlowLog where
 
 import Stratosphere.ResourceImports
-
+import Stratosphere.ResourceProperties.Tag
 
 -- | Full data type definition for EC2FlowLog. See 'ec2FlowLog' for a more
 -- convenient constructor.
@@ -17,9 +17,12 @@
   { _eC2FlowLogDeliverLogsPermissionArn :: Maybe (Val Text)
   , _eC2FlowLogLogDestination :: Maybe (Val Text)
   , _eC2FlowLogLogDestinationType :: Maybe (Val Text)
+  , _eC2FlowLogLogFormat :: Maybe (Val Text)
   , _eC2FlowLogLogGroupName :: Maybe (Val Text)
+  , _eC2FlowLogMaxAggregationInterval :: Maybe (Val Integer)
   , _eC2FlowLogResourceId :: Val Text
   , _eC2FlowLogResourceType :: Val Text
+  , _eC2FlowLogTags :: Maybe [Tag]
   , _eC2FlowLogTrafficType :: Val Text
   } deriving (Show, Eq)
 
@@ -32,9 +35,12 @@
         [ fmap (("DeliverLogsPermissionArn",) . toJSON) _eC2FlowLogDeliverLogsPermissionArn
         , fmap (("LogDestination",) . toJSON) _eC2FlowLogLogDestination
         , fmap (("LogDestinationType",) . toJSON) _eC2FlowLogLogDestinationType
+        , fmap (("LogFormat",) . toJSON) _eC2FlowLogLogFormat
         , fmap (("LogGroupName",) . toJSON) _eC2FlowLogLogGroupName
+        , fmap (("MaxAggregationInterval",) . toJSON) _eC2FlowLogMaxAggregationInterval
         , (Just . ("ResourceId",) . toJSON) _eC2FlowLogResourceId
         , (Just . ("ResourceType",) . toJSON) _eC2FlowLogResourceType
+        , fmap (("Tags",) . toJSON) _eC2FlowLogTags
         , (Just . ("TrafficType",) . toJSON) _eC2FlowLogTrafficType
         ]
     }
@@ -50,9 +56,12 @@
   { _eC2FlowLogDeliverLogsPermissionArn = Nothing
   , _eC2FlowLogLogDestination = Nothing
   , _eC2FlowLogLogDestinationType = Nothing
+  , _eC2FlowLogLogFormat = Nothing
   , _eC2FlowLogLogGroupName = Nothing
+  , _eC2FlowLogMaxAggregationInterval = Nothing
   , _eC2FlowLogResourceId = resourceIdarg
   , _eC2FlowLogResourceType = resourceTypearg
+  , _eC2FlowLogTags = Nothing
   , _eC2FlowLogTrafficType = trafficTypearg
   }
 
@@ -68,10 +77,18 @@
 ecflLogDestinationType :: Lens' EC2FlowLog (Maybe (Val Text))
 ecflLogDestinationType = lens _eC2FlowLogLogDestinationType (\s a -> s { _eC2FlowLogLogDestinationType = a })
 
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-logformat
+ecflLogFormat :: Lens' EC2FlowLog (Maybe (Val Text))
+ecflLogFormat = lens _eC2FlowLogLogFormat (\s a -> s { _eC2FlowLogLogFormat = a })
+
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-loggroupname
 ecflLogGroupName :: Lens' EC2FlowLog (Maybe (Val Text))
 ecflLogGroupName = lens _eC2FlowLogLogGroupName (\s a -> s { _eC2FlowLogLogGroupName = a })
 
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-maxaggregationinterval
+ecflMaxAggregationInterval :: Lens' EC2FlowLog (Maybe (Val Integer))
+ecflMaxAggregationInterval = lens _eC2FlowLogMaxAggregationInterval (\s a -> s { _eC2FlowLogMaxAggregationInterval = a })
+
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-resourceid
 ecflResourceId :: Lens' EC2FlowLog (Val Text)
 ecflResourceId = lens _eC2FlowLogResourceId (\s a -> s { _eC2FlowLogResourceId = a })
@@ -79,6 +96,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-resourcetype
 ecflResourceType :: Lens' EC2FlowLog (Val Text)
 ecflResourceType = lens _eC2FlowLogResourceType (\s a -> s { _eC2FlowLogResourceType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-tags
+ecflTags :: Lens' EC2FlowLog (Maybe [Tag])
+ecflTags = lens _eC2FlowLogTags (\s a -> s { _eC2FlowLogTags = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-traffictype
 ecflTrafficType :: Lens' EC2FlowLog (Val Text)
diff --git a/library-gen/Stratosphere/Resources/EC2PrefixList.hs b/library-gen/Stratosphere/Resources/EC2PrefixList.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/Resources/EC2PrefixList.hs
@@ -0,0 +1,72 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html
+
+module Stratosphere.Resources.EC2PrefixList where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.EC2PrefixListEntry
+import Stratosphere.ResourceProperties.Tag
+
+-- | Full data type definition for EC2PrefixList. See 'ec2PrefixList' for a
+-- more convenient constructor.
+data EC2PrefixList =
+  EC2PrefixList
+  { _eC2PrefixListAddressFamily :: Val Text
+  , _eC2PrefixListEntries :: Maybe [EC2PrefixListEntry]
+  , _eC2PrefixListMaxEntries :: Val Integer
+  , _eC2PrefixListPrefixListName :: Val Text
+  , _eC2PrefixListTags :: Maybe [Tag]
+  } deriving (Show, Eq)
+
+instance ToResourceProperties EC2PrefixList where
+  toResourceProperties EC2PrefixList{..} =
+    ResourceProperties
+    { resourcePropertiesType = "AWS::EC2::PrefixList"
+    , resourcePropertiesProperties =
+        hashMapFromList $ catMaybes
+        [ (Just . ("AddressFamily",) . toJSON) _eC2PrefixListAddressFamily
+        , fmap (("Entries",) . toJSON) _eC2PrefixListEntries
+        , (Just . ("MaxEntries",) . toJSON) _eC2PrefixListMaxEntries
+        , (Just . ("PrefixListName",) . toJSON) _eC2PrefixListPrefixListName
+        , fmap (("Tags",) . toJSON) _eC2PrefixListTags
+        ]
+    }
+
+-- | Constructor for 'EC2PrefixList' containing required fields as arguments.
+ec2PrefixList
+  :: Val Text -- ^ 'ecplAddressFamily'
+  -> Val Integer -- ^ 'ecplMaxEntries'
+  -> Val Text -- ^ 'ecplPrefixListName'
+  -> EC2PrefixList
+ec2PrefixList addressFamilyarg maxEntriesarg prefixListNamearg =
+  EC2PrefixList
+  { _eC2PrefixListAddressFamily = addressFamilyarg
+  , _eC2PrefixListEntries = Nothing
+  , _eC2PrefixListMaxEntries = maxEntriesarg
+  , _eC2PrefixListPrefixListName = prefixListNamearg
+  , _eC2PrefixListTags = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html#cfn-ec2-prefixlist-addressfamily
+ecplAddressFamily :: Lens' EC2PrefixList (Val Text)
+ecplAddressFamily = lens _eC2PrefixListAddressFamily (\s a -> s { _eC2PrefixListAddressFamily = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html#cfn-ec2-prefixlist-entries
+ecplEntries :: Lens' EC2PrefixList (Maybe [EC2PrefixListEntry])
+ecplEntries = lens _eC2PrefixListEntries (\s a -> s { _eC2PrefixListEntries = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html#cfn-ec2-prefixlist-maxentries
+ecplMaxEntries :: Lens' EC2PrefixList (Val Integer)
+ecplMaxEntries = lens _eC2PrefixListMaxEntries (\s a -> s { _eC2PrefixListMaxEntries = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html#cfn-ec2-prefixlist-prefixlistname
+ecplPrefixListName :: Lens' EC2PrefixList (Val Text)
+ecplPrefixListName = lens _eC2PrefixListPrefixListName (\s a -> s { _eC2PrefixListPrefixListName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html#cfn-ec2-prefixlist-tags
+ecplTags :: Lens' EC2PrefixList (Maybe [Tag])
+ecplTags = lens _eC2PrefixListTags (\s a -> s { _eC2PrefixListTags = a })
diff --git a/library-gen/Stratosphere/Resources/ECSTaskDefinition.hs b/library-gen/Stratosphere/Resources/ECSTaskDefinition.hs
--- a/library-gen/Stratosphere/Resources/ECSTaskDefinition.hs
+++ b/library-gen/Stratosphere/Resources/ECSTaskDefinition.hs
@@ -32,6 +32,7 @@
   , _eCSTaskDefinitionProxyConfiguration :: Maybe ECSTaskDefinitionProxyConfiguration
   , _eCSTaskDefinitionRequiresCompatibilities :: Maybe (ValList Text)
   , _eCSTaskDefinitionTags :: Maybe [Tag]
+  , _eCSTaskDefinitionTaskDefinitionStatus :: Maybe (Val Text)
   , _eCSTaskDefinitionTaskRoleArn :: Maybe (Val Text)
   , _eCSTaskDefinitionVolumes :: Maybe [ECSTaskDefinitionVolume]
   } deriving (Show, Eq)
@@ -55,6 +56,7 @@
         , fmap (("ProxyConfiguration",) . toJSON) _eCSTaskDefinitionProxyConfiguration
         , fmap (("RequiresCompatibilities",) . toJSON) _eCSTaskDefinitionRequiresCompatibilities
         , fmap (("Tags",) . toJSON) _eCSTaskDefinitionTags
+        , fmap (("TaskDefinitionStatus",) . toJSON) _eCSTaskDefinitionTaskDefinitionStatus
         , fmap (("TaskRoleArn",) . toJSON) _eCSTaskDefinitionTaskRoleArn
         , fmap (("Volumes",) . toJSON) _eCSTaskDefinitionVolumes
         ]
@@ -79,6 +81,7 @@
   , _eCSTaskDefinitionProxyConfiguration = Nothing
   , _eCSTaskDefinitionRequiresCompatibilities = Nothing
   , _eCSTaskDefinitionTags = Nothing
+  , _eCSTaskDefinitionTaskDefinitionStatus = Nothing
   , _eCSTaskDefinitionTaskRoleArn = Nothing
   , _eCSTaskDefinitionVolumes = Nothing
   }
@@ -134,6 +137,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-tags
 ecstdTags :: Lens' ECSTaskDefinition (Maybe [Tag])
 ecstdTags = lens _eCSTaskDefinitionTags (\s a -> s { _eCSTaskDefinitionTags = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-taskdefinitionstatus
+ecstdTaskDefinitionStatus :: Lens' ECSTaskDefinition (Maybe (Val Text))
+ecstdTaskDefinitionStatus = lens _eCSTaskDefinitionTaskDefinitionStatus (\s a -> s { _eCSTaskDefinitionTaskDefinitionStatus = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-taskrolearn
 ecstdTaskRoleArn :: Lens' ECSTaskDefinition (Maybe (Val Text))
diff --git a/library-gen/Stratosphere/Resources/EFSFileSystem.hs b/library-gen/Stratosphere/Resources/EFSFileSystem.hs
--- a/library-gen/Stratosphere/Resources/EFSFileSystem.hs
+++ b/library-gen/Stratosphere/Resources/EFSFileSystem.hs
@@ -8,6 +8,7 @@
 module Stratosphere.Resources.EFSFileSystem where
 
 import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.EFSFileSystemBackupPolicy
 import Stratosphere.ResourceProperties.EFSFileSystemElasticFileSystemTag
 import Stratosphere.ResourceProperties.EFSFileSystemLifecyclePolicy
 
@@ -15,7 +16,8 @@
 -- more convenient constructor.
 data EFSFileSystem =
   EFSFileSystem
-  { _eFSFileSystemEncrypted :: Maybe (Val Bool)
+  { _eFSFileSystemBackupPolicy :: Maybe EFSFileSystemBackupPolicy
+  , _eFSFileSystemEncrypted :: Maybe (Val Bool)
   , _eFSFileSystemFileSystemPolicy :: Maybe Object
   , _eFSFileSystemFileSystemTags :: Maybe [EFSFileSystemElasticFileSystemTag]
   , _eFSFileSystemKmsKeyId :: Maybe (Val Text)
@@ -31,7 +33,8 @@
     { resourcePropertiesType = "AWS::EFS::FileSystem"
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
-        [ fmap (("Encrypted",) . toJSON) _eFSFileSystemEncrypted
+        [ fmap (("BackupPolicy",) . toJSON) _eFSFileSystemBackupPolicy
+        , fmap (("Encrypted",) . toJSON) _eFSFileSystemEncrypted
         , fmap (("FileSystemPolicy",) . toJSON) _eFSFileSystemFileSystemPolicy
         , fmap (("FileSystemTags",) . toJSON) _eFSFileSystemFileSystemTags
         , fmap (("KmsKeyId",) . toJSON) _eFSFileSystemKmsKeyId
@@ -47,7 +50,8 @@
   :: EFSFileSystem
 efsFileSystem  =
   EFSFileSystem
-  { _eFSFileSystemEncrypted = Nothing
+  { _eFSFileSystemBackupPolicy = Nothing
+  , _eFSFileSystemEncrypted = Nothing
   , _eFSFileSystemFileSystemPolicy = Nothing
   , _eFSFileSystemFileSystemTags = Nothing
   , _eFSFileSystemKmsKeyId = Nothing
@@ -56,6 +60,10 @@
   , _eFSFileSystemProvisionedThroughputInMibps = Nothing
   , _eFSFileSystemThroughputMode = Nothing
   }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-backuppolicy
+efsfsBackupPolicy :: Lens' EFSFileSystem (Maybe EFSFileSystemBackupPolicy)
+efsfsBackupPolicy = lens _eFSFileSystemBackupPolicy (\s a -> s { _eFSFileSystemBackupPolicy = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-encrypted
 efsfsEncrypted :: Lens' EFSFileSystem (Maybe (Val Bool))
diff --git a/library-gen/Stratosphere/Resources/ElasticLoadBalancingV2Listener.hs b/library-gen/Stratosphere/Resources/ElasticLoadBalancingV2Listener.hs
--- a/library-gen/Stratosphere/Resources/ElasticLoadBalancingV2Listener.hs
+++ b/library-gen/Stratosphere/Resources/ElasticLoadBalancingV2Listener.hs
@@ -15,7 +15,8 @@
 -- 'elasticLoadBalancingV2Listener' for a more convenient constructor.
 data ElasticLoadBalancingV2Listener =
   ElasticLoadBalancingV2Listener
-  { _elasticLoadBalancingV2ListenerCertificates :: Maybe [ElasticLoadBalancingV2ListenerCertificate]
+  { _elasticLoadBalancingV2ListenerAlpnPolicy :: Maybe (ValList Text)
+  , _elasticLoadBalancingV2ListenerCertificates :: Maybe [ElasticLoadBalancingV2ListenerCertificate]
   , _elasticLoadBalancingV2ListenerDefaultActions :: [ElasticLoadBalancingV2ListenerAction]
   , _elasticLoadBalancingV2ListenerLoadBalancerArn :: Val Text
   , _elasticLoadBalancingV2ListenerPort :: Val Integer
@@ -29,7 +30,8 @@
     { resourcePropertiesType = "AWS::ElasticLoadBalancingV2::Listener"
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
-        [ fmap (("Certificates",) . toJSON) _elasticLoadBalancingV2ListenerCertificates
+        [ fmap (("AlpnPolicy",) . toJSON) _elasticLoadBalancingV2ListenerAlpnPolicy
+        , fmap (("Certificates",) . toJSON) _elasticLoadBalancingV2ListenerCertificates
         , (Just . ("DefaultActions",) . toJSON) _elasticLoadBalancingV2ListenerDefaultActions
         , (Just . ("LoadBalancerArn",) . toJSON) _elasticLoadBalancingV2ListenerLoadBalancerArn
         , (Just . ("Port",) . toJSON) _elasticLoadBalancingV2ListenerPort
@@ -48,13 +50,18 @@
   -> ElasticLoadBalancingV2Listener
 elasticLoadBalancingV2Listener defaultActionsarg loadBalancerArnarg portarg protocolarg =
   ElasticLoadBalancingV2Listener
-  { _elasticLoadBalancingV2ListenerCertificates = Nothing
+  { _elasticLoadBalancingV2ListenerAlpnPolicy = Nothing
+  , _elasticLoadBalancingV2ListenerCertificates = Nothing
   , _elasticLoadBalancingV2ListenerDefaultActions = defaultActionsarg
   , _elasticLoadBalancingV2ListenerLoadBalancerArn = loadBalancerArnarg
   , _elasticLoadBalancingV2ListenerPort = portarg
   , _elasticLoadBalancingV2ListenerProtocol = protocolarg
   , _elasticLoadBalancingV2ListenerSslPolicy = Nothing
   }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-alpnpolicy
+elbvlAlpnPolicy :: Lens' ElasticLoadBalancingV2Listener (Maybe (ValList Text))
+elbvlAlpnPolicy = lens _elasticLoadBalancingV2ListenerAlpnPolicy (\s a -> s { _elasticLoadBalancingV2ListenerAlpnPolicy = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-certificates
 elbvlCertificates :: Lens' ElasticLoadBalancingV2Listener (Maybe [ElasticLoadBalancingV2ListenerCertificate])
diff --git a/library-gen/Stratosphere/Resources/ElasticsearchDomain.hs b/library-gen/Stratosphere/Resources/ElasticsearchDomain.hs
--- a/library-gen/Stratosphere/Resources/ElasticsearchDomain.hs
+++ b/library-gen/Stratosphere/Resources/ElasticsearchDomain.hs
@@ -8,7 +8,9 @@
 module Stratosphere.Resources.ElasticsearchDomain where
 
 import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ElasticsearchDomainAdvancedSecurityOptionsInput
 import Stratosphere.ResourceProperties.ElasticsearchDomainCognitoOptions
+import Stratosphere.ResourceProperties.ElasticsearchDomainDomainEndpointOptions
 import Stratosphere.ResourceProperties.ElasticsearchDomainEBSOptions
 import Stratosphere.ResourceProperties.ElasticsearchDomainElasticsearchClusterConfig
 import Stratosphere.ResourceProperties.ElasticsearchDomainEncryptionAtRestOptions
@@ -24,7 +26,9 @@
   ElasticsearchDomain
   { _elasticsearchDomainAccessPolicies :: Maybe Object
   , _elasticsearchDomainAdvancedOptions :: Maybe Object
+  , _elasticsearchDomainAdvancedSecurityOptions :: Maybe ElasticsearchDomainAdvancedSecurityOptionsInput
   , _elasticsearchDomainCognitoOptions :: Maybe ElasticsearchDomainCognitoOptions
+  , _elasticsearchDomainDomainEndpointOptions :: Maybe ElasticsearchDomainDomainEndpointOptions
   , _elasticsearchDomainDomainName :: Maybe (Val Text)
   , _elasticsearchDomainEBSOptions :: Maybe ElasticsearchDomainEBSOptions
   , _elasticsearchDomainElasticsearchClusterConfig :: Maybe ElasticsearchDomainElasticsearchClusterConfig
@@ -45,7 +49,9 @@
         hashMapFromList $ catMaybes
         [ fmap (("AccessPolicies",) . toJSON) _elasticsearchDomainAccessPolicies
         , fmap (("AdvancedOptions",) . toJSON) _elasticsearchDomainAdvancedOptions
+        , fmap (("AdvancedSecurityOptions",) . toJSON) _elasticsearchDomainAdvancedSecurityOptions
         , fmap (("CognitoOptions",) . toJSON) _elasticsearchDomainCognitoOptions
+        , fmap (("DomainEndpointOptions",) . toJSON) _elasticsearchDomainDomainEndpointOptions
         , fmap (("DomainName",) . toJSON) _elasticsearchDomainDomainName
         , fmap (("EBSOptions",) . toJSON) _elasticsearchDomainEBSOptions
         , fmap (("ElasticsearchClusterConfig",) . toJSON) _elasticsearchDomainElasticsearchClusterConfig
@@ -67,7 +73,9 @@
   ElasticsearchDomain
   { _elasticsearchDomainAccessPolicies = Nothing
   , _elasticsearchDomainAdvancedOptions = Nothing
+  , _elasticsearchDomainAdvancedSecurityOptions = Nothing
   , _elasticsearchDomainCognitoOptions = Nothing
+  , _elasticsearchDomainDomainEndpointOptions = Nothing
   , _elasticsearchDomainDomainName = Nothing
   , _elasticsearchDomainEBSOptions = Nothing
   , _elasticsearchDomainElasticsearchClusterConfig = Nothing
@@ -88,9 +96,17 @@
 edAdvancedOptions :: Lens' ElasticsearchDomain (Maybe Object)
 edAdvancedOptions = lens _elasticsearchDomainAdvancedOptions (\s a -> s { _elasticsearchDomainAdvancedOptions = a })
 
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-advancedsecurityoptions
+edAdvancedSecurityOptions :: Lens' ElasticsearchDomain (Maybe ElasticsearchDomainAdvancedSecurityOptionsInput)
+edAdvancedSecurityOptions = lens _elasticsearchDomainAdvancedSecurityOptions (\s a -> s { _elasticsearchDomainAdvancedSecurityOptions = a })
+
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-cognitooptions
 edCognitoOptions :: Lens' ElasticsearchDomain (Maybe ElasticsearchDomainCognitoOptions)
 edCognitoOptions = lens _elasticsearchDomainCognitoOptions (\s a -> s { _elasticsearchDomainCognitoOptions = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-domainendpointoptions
+edDomainEndpointOptions :: Lens' ElasticsearchDomain (Maybe ElasticsearchDomainDomainEndpointOptions)
+edDomainEndpointOptions = lens _elasticsearchDomainDomainEndpointOptions (\s a -> s { _elasticsearchDomainDomainEndpointOptions = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-domainname
 edDomainName :: Lens' ElasticsearchDomain (Maybe (Val Text))
diff --git a/library-gen/Stratosphere/Resources/ImageBuilderComponent.hs b/library-gen/Stratosphere/Resources/ImageBuilderComponent.hs
--- a/library-gen/Stratosphere/Resources/ImageBuilderComponent.hs
+++ b/library-gen/Stratosphere/Resources/ImageBuilderComponent.hs
@@ -20,6 +20,7 @@
   , _imageBuilderComponentKmsKeyId :: Maybe (Val Text)
   , _imageBuilderComponentName :: Val Text
   , _imageBuilderComponentPlatform :: Val Text
+  , _imageBuilderComponentSupportedOsVersions :: Maybe (ValList Text)
   , _imageBuilderComponentTags :: Maybe Object
   , _imageBuilderComponentUri :: Maybe (Val Text)
   , _imageBuilderComponentVersion :: Val Text
@@ -37,6 +38,7 @@
         , fmap (("KmsKeyId",) . toJSON) _imageBuilderComponentKmsKeyId
         , (Just . ("Name",) . toJSON) _imageBuilderComponentName
         , (Just . ("Platform",) . toJSON) _imageBuilderComponentPlatform
+        , fmap (("SupportedOsVersions",) . toJSON) _imageBuilderComponentSupportedOsVersions
         , fmap (("Tags",) . toJSON) _imageBuilderComponentTags
         , fmap (("Uri",) . toJSON) _imageBuilderComponentUri
         , (Just . ("Version",) . toJSON) _imageBuilderComponentVersion
@@ -58,6 +60,7 @@
   , _imageBuilderComponentKmsKeyId = Nothing
   , _imageBuilderComponentName = namearg
   , _imageBuilderComponentPlatform = platformarg
+  , _imageBuilderComponentSupportedOsVersions = Nothing
   , _imageBuilderComponentTags = Nothing
   , _imageBuilderComponentUri = Nothing
   , _imageBuilderComponentVersion = versionarg
@@ -86,6 +89,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-platform
 ibcPlatform :: Lens' ImageBuilderComponent (Val Text)
 ibcPlatform = lens _imageBuilderComponentPlatform (\s a -> s { _imageBuilderComponentPlatform = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-supportedosversions
+ibcSupportedOsVersions :: Lens' ImageBuilderComponent (Maybe (ValList Text))
+ibcSupportedOsVersions = lens _imageBuilderComponentSupportedOsVersions (\s a -> s { _imageBuilderComponentSupportedOsVersions = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html#cfn-imagebuilder-component-tags
 ibcTags :: Lens' ImageBuilderComponent (Maybe Object)
diff --git a/library-gen/Stratosphere/Resources/ImageBuilderImage.hs b/library-gen/Stratosphere/Resources/ImageBuilderImage.hs
--- a/library-gen/Stratosphere/Resources/ImageBuilderImage.hs
+++ b/library-gen/Stratosphere/Resources/ImageBuilderImage.hs
@@ -15,6 +15,7 @@
 data ImageBuilderImage =
   ImageBuilderImage
   { _imageBuilderImageDistributionConfigurationArn :: Maybe (Val Text)
+  , _imageBuilderImageEnhancedImageMetadataEnabled :: Maybe (Val Bool)
   , _imageBuilderImageImageRecipeArn :: Val Text
   , _imageBuilderImageImageTestsConfiguration :: Maybe ImageBuilderImageImageTestsConfiguration
   , _imageBuilderImageInfrastructureConfigurationArn :: Val Text
@@ -28,6 +29,7 @@
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
         [ fmap (("DistributionConfigurationArn",) . toJSON) _imageBuilderImageDistributionConfigurationArn
+        , fmap (("EnhancedImageMetadataEnabled",) . toJSON) _imageBuilderImageEnhancedImageMetadataEnabled
         , (Just . ("ImageRecipeArn",) . toJSON) _imageBuilderImageImageRecipeArn
         , fmap (("ImageTestsConfiguration",) . toJSON) _imageBuilderImageImageTestsConfiguration
         , (Just . ("InfrastructureConfigurationArn",) . toJSON) _imageBuilderImageInfrastructureConfigurationArn
@@ -44,6 +46,7 @@
 imageBuilderImage imageRecipeArnarg infrastructureConfigurationArnarg =
   ImageBuilderImage
   { _imageBuilderImageDistributionConfigurationArn = Nothing
+  , _imageBuilderImageEnhancedImageMetadataEnabled = Nothing
   , _imageBuilderImageImageRecipeArn = imageRecipeArnarg
   , _imageBuilderImageImageTestsConfiguration = Nothing
   , _imageBuilderImageInfrastructureConfigurationArn = infrastructureConfigurationArnarg
@@ -53,6 +56,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html#cfn-imagebuilder-image-distributionconfigurationarn
 ibiDistributionConfigurationArn :: Lens' ImageBuilderImage (Maybe (Val Text))
 ibiDistributionConfigurationArn = lens _imageBuilderImageDistributionConfigurationArn (\s a -> s { _imageBuilderImageDistributionConfigurationArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html#cfn-imagebuilder-image-enhancedimagemetadataenabled
+ibiEnhancedImageMetadataEnabled :: Lens' ImageBuilderImage (Maybe (Val Bool))
+ibiEnhancedImageMetadataEnabled = lens _imageBuilderImageEnhancedImageMetadataEnabled (\s a -> s { _imageBuilderImageEnhancedImageMetadataEnabled = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html#cfn-imagebuilder-image-imagerecipearn
 ibiImageRecipeArn :: Lens' ImageBuilderImage (Val Text)
diff --git a/library-gen/Stratosphere/Resources/ImageBuilderImagePipeline.hs b/library-gen/Stratosphere/Resources/ImageBuilderImagePipeline.hs
--- a/library-gen/Stratosphere/Resources/ImageBuilderImagePipeline.hs
+++ b/library-gen/Stratosphere/Resources/ImageBuilderImagePipeline.hs
@@ -17,6 +17,7 @@
   ImageBuilderImagePipeline
   { _imageBuilderImagePipelineDescription :: Maybe (Val Text)
   , _imageBuilderImagePipelineDistributionConfigurationArn :: Maybe (Val Text)
+  , _imageBuilderImagePipelineEnhancedImageMetadataEnabled :: Maybe (Val Bool)
   , _imageBuilderImagePipelineImageRecipeArn :: Val Text
   , _imageBuilderImagePipelineImageTestsConfiguration :: Maybe ImageBuilderImagePipelineImageTestsConfiguration
   , _imageBuilderImagePipelineInfrastructureConfigurationArn :: Val Text
@@ -34,6 +35,7 @@
         hashMapFromList $ catMaybes
         [ fmap (("Description",) . toJSON) _imageBuilderImagePipelineDescription
         , fmap (("DistributionConfigurationArn",) . toJSON) _imageBuilderImagePipelineDistributionConfigurationArn
+        , fmap (("EnhancedImageMetadataEnabled",) . toJSON) _imageBuilderImagePipelineEnhancedImageMetadataEnabled
         , (Just . ("ImageRecipeArn",) . toJSON) _imageBuilderImagePipelineImageRecipeArn
         , fmap (("ImageTestsConfiguration",) . toJSON) _imageBuilderImagePipelineImageTestsConfiguration
         , (Just . ("InfrastructureConfigurationArn",) . toJSON) _imageBuilderImagePipelineInfrastructureConfigurationArn
@@ -55,6 +57,7 @@
   ImageBuilderImagePipeline
   { _imageBuilderImagePipelineDescription = Nothing
   , _imageBuilderImagePipelineDistributionConfigurationArn = Nothing
+  , _imageBuilderImagePipelineEnhancedImageMetadataEnabled = Nothing
   , _imageBuilderImagePipelineImageRecipeArn = imageRecipeArnarg
   , _imageBuilderImagePipelineImageTestsConfiguration = Nothing
   , _imageBuilderImagePipelineInfrastructureConfigurationArn = infrastructureConfigurationArnarg
@@ -71,6 +74,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-distributionconfigurationarn
 ibipDistributionConfigurationArn :: Lens' ImageBuilderImagePipeline (Maybe (Val Text))
 ibipDistributionConfigurationArn = lens _imageBuilderImagePipelineDistributionConfigurationArn (\s a -> s { _imageBuilderImagePipelineDistributionConfigurationArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-enhancedimagemetadataenabled
+ibipEnhancedImageMetadataEnabled :: Lens' ImageBuilderImagePipeline (Maybe (Val Bool))
+ibipEnhancedImageMetadataEnabled = lens _imageBuilderImagePipelineEnhancedImageMetadataEnabled (\s a -> s { _imageBuilderImagePipelineEnhancedImageMetadataEnabled = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html#cfn-imagebuilder-imagepipeline-imagerecipearn
 ibipImageRecipeArn :: Lens' ImageBuilderImagePipeline (Val Text)
diff --git a/library-gen/Stratosphere/Resources/ImageBuilderImageRecipe.hs b/library-gen/Stratosphere/Resources/ImageBuilderImageRecipe.hs
--- a/library-gen/Stratosphere/Resources/ImageBuilderImageRecipe.hs
+++ b/library-gen/Stratosphere/Resources/ImageBuilderImageRecipe.hs
@@ -22,6 +22,7 @@
   , _imageBuilderImageRecipeParentImage :: Val Text
   , _imageBuilderImageRecipeTags :: Maybe Object
   , _imageBuilderImageRecipeVersion :: Val Text
+  , _imageBuilderImageRecipeWorkingDirectory :: Maybe (Val Text)
   } deriving (Show, Eq)
 
 instance ToResourceProperties ImageBuilderImageRecipe where
@@ -37,6 +38,7 @@
         , (Just . ("ParentImage",) . toJSON) _imageBuilderImageRecipeParentImage
         , fmap (("Tags",) . toJSON) _imageBuilderImageRecipeTags
         , (Just . ("Version",) . toJSON) _imageBuilderImageRecipeVersion
+        , fmap (("WorkingDirectory",) . toJSON) _imageBuilderImageRecipeWorkingDirectory
         ]
     }
 
@@ -57,6 +59,7 @@
   , _imageBuilderImageRecipeParentImage = parentImagearg
   , _imageBuilderImageRecipeTags = Nothing
   , _imageBuilderImageRecipeVersion = versionarg
+  , _imageBuilderImageRecipeWorkingDirectory = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-blockdevicemappings
@@ -86,3 +89,7 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-version
 ibirVersion :: Lens' ImageBuilderImageRecipe (Val Text)
 ibirVersion = lens _imageBuilderImageRecipeVersion (\s a -> s { _imageBuilderImageRecipeVersion = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html#cfn-imagebuilder-imagerecipe-workingdirectory
+ibirWorkingDirectory :: Lens' ImageBuilderImageRecipe (Maybe (Val Text))
+ibirWorkingDirectory = lens _imageBuilderImageRecipeWorkingDirectory (\s a -> s { _imageBuilderImageRecipeWorkingDirectory = a })
diff --git a/library-gen/Stratosphere/Resources/ImageBuilderInfrastructureConfiguration.hs b/library-gen/Stratosphere/Resources/ImageBuilderInfrastructureConfiguration.hs
--- a/library-gen/Stratosphere/Resources/ImageBuilderInfrastructureConfiguration.hs
+++ b/library-gen/Stratosphere/Resources/ImageBuilderInfrastructureConfiguration.hs
@@ -21,6 +21,7 @@
   , _imageBuilderInfrastructureConfigurationKeyPair :: Maybe (Val Text)
   , _imageBuilderInfrastructureConfigurationLogging :: Maybe Object
   , _imageBuilderInfrastructureConfigurationName :: Val Text
+  , _imageBuilderInfrastructureConfigurationResourceTags :: Maybe Object
   , _imageBuilderInfrastructureConfigurationSecurityGroupIds :: Maybe (ValList Text)
   , _imageBuilderInfrastructureConfigurationSnsTopicArn :: Maybe (Val Text)
   , _imageBuilderInfrastructureConfigurationSubnetId :: Maybe (Val Text)
@@ -40,6 +41,7 @@
         , fmap (("KeyPair",) . toJSON) _imageBuilderInfrastructureConfigurationKeyPair
         , fmap (("Logging",) . toJSON) _imageBuilderInfrastructureConfigurationLogging
         , (Just . ("Name",) . toJSON) _imageBuilderInfrastructureConfigurationName
+        , fmap (("ResourceTags",) . toJSON) _imageBuilderInfrastructureConfigurationResourceTags
         , fmap (("SecurityGroupIds",) . toJSON) _imageBuilderInfrastructureConfigurationSecurityGroupIds
         , fmap (("SnsTopicArn",) . toJSON) _imageBuilderInfrastructureConfigurationSnsTopicArn
         , fmap (("SubnetId",) . toJSON) _imageBuilderInfrastructureConfigurationSubnetId
@@ -62,6 +64,7 @@
   , _imageBuilderInfrastructureConfigurationKeyPair = Nothing
   , _imageBuilderInfrastructureConfigurationLogging = Nothing
   , _imageBuilderInfrastructureConfigurationName = namearg
+  , _imageBuilderInfrastructureConfigurationResourceTags = Nothing
   , _imageBuilderInfrastructureConfigurationSecurityGroupIds = Nothing
   , _imageBuilderInfrastructureConfigurationSnsTopicArn = Nothing
   , _imageBuilderInfrastructureConfigurationSubnetId = Nothing
@@ -92,6 +95,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-name
 ibicName :: Lens' ImageBuilderInfrastructureConfiguration (Val Text)
 ibicName = lens _imageBuilderInfrastructureConfigurationName (\s a -> s { _imageBuilderInfrastructureConfigurationName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-resourcetags
+ibicResourceTags :: Lens' ImageBuilderInfrastructureConfiguration (Maybe Object)
+ibicResourceTags = lens _imageBuilderInfrastructureConfigurationResourceTags (\s a -> s { _imageBuilderInfrastructureConfigurationResourceTags = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html#cfn-imagebuilder-infrastructureconfiguration-securitygroupids
 ibicSecurityGroupIds :: Lens' ImageBuilderInfrastructureConfiguration (Maybe (ValList Text))
diff --git a/library-gen/Stratosphere/Resources/LambdaFunction.hs b/library-gen/Stratosphere/Resources/LambdaFunction.hs
--- a/library-gen/Stratosphere/Resources/LambdaFunction.hs
+++ b/library-gen/Stratosphere/Resources/LambdaFunction.hs
@@ -12,6 +12,7 @@
 import Stratosphere.ResourceProperties.LambdaFunctionCode
 import Stratosphere.ResourceProperties.LambdaFunctionDeadLetterConfig
 import Stratosphere.ResourceProperties.LambdaFunctionEnvironment
+import Stratosphere.ResourceProperties.LambdaFunctionFileSystemConfig
 import Stratosphere.ResourceProperties.Tag
 import Stratosphere.ResourceProperties.LambdaFunctionTracingConfig
 import Stratosphere.ResourceProperties.LambdaFunctionVpcConfig
@@ -24,6 +25,7 @@
   , _lambdaFunctionDeadLetterConfig :: Maybe LambdaFunctionDeadLetterConfig
   , _lambdaFunctionDescription :: Maybe (Val Text)
   , _lambdaFunctionEnvironment :: Maybe LambdaFunctionEnvironment
+  , _lambdaFunctionFileSystemConfigs :: Maybe [LambdaFunctionFileSystemConfig]
   , _lambdaFunctionFunctionName :: Maybe (Val Text)
   , _lambdaFunctionHandler :: Val Text
   , _lambdaFunctionKmsKeyArn :: Maybe (Val Text)
@@ -48,6 +50,7 @@
         , fmap (("DeadLetterConfig",) . toJSON) _lambdaFunctionDeadLetterConfig
         , fmap (("Description",) . toJSON) _lambdaFunctionDescription
         , fmap (("Environment",) . toJSON) _lambdaFunctionEnvironment
+        , fmap (("FileSystemConfigs",) . toJSON) _lambdaFunctionFileSystemConfigs
         , fmap (("FunctionName",) . toJSON) _lambdaFunctionFunctionName
         , (Just . ("Handler",) . toJSON) _lambdaFunctionHandler
         , fmap (("KmsKeyArn",) . toJSON) _lambdaFunctionKmsKeyArn
@@ -76,6 +79,7 @@
   , _lambdaFunctionDeadLetterConfig = Nothing
   , _lambdaFunctionDescription = Nothing
   , _lambdaFunctionEnvironment = Nothing
+  , _lambdaFunctionFileSystemConfigs = Nothing
   , _lambdaFunctionFunctionName = Nothing
   , _lambdaFunctionHandler = handlerarg
   , _lambdaFunctionKmsKeyArn = Nothing
@@ -105,6 +109,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-environment
 lfEnvironment :: Lens' LambdaFunction (Maybe LambdaFunctionEnvironment)
 lfEnvironment = lens _lambdaFunctionEnvironment (\s a -> s { _lambdaFunctionEnvironment = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-filesystemconfigs
+lfFileSystemConfigs :: Lens' LambdaFunction (Maybe [LambdaFunctionFileSystemConfig])
+lfFileSystemConfigs = lens _lambdaFunctionFileSystemConfigs (\s a -> s { _lambdaFunctionFileSystemConfigs = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionname
 lfFunctionName :: Lens' LambdaFunction (Maybe (Val Text))
diff --git a/library-gen/Stratosphere/Resources/QLDBStream.hs b/library-gen/Stratosphere/Resources/QLDBStream.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/Resources/QLDBStream.hs
@@ -0,0 +1,88 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html
+
+module Stratosphere.Resources.QLDBStream where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.QLDBStreamKinesisConfiguration
+import Stratosphere.ResourceProperties.Tag
+
+-- | Full data type definition for QLDBStream. See 'qldbStream' for a more
+-- convenient constructor.
+data QLDBStream =
+  QLDBStream
+  { _qLDBStreamExclusiveEndTime :: Maybe (Val Text)
+  , _qLDBStreamInclusiveStartTime :: Val Text
+  , _qLDBStreamKinesisConfiguration :: QLDBStreamKinesisConfiguration
+  , _qLDBStreamLedgerName :: Val Text
+  , _qLDBStreamRoleArn :: Val Text
+  , _qLDBStreamStreamName :: Val Text
+  , _qLDBStreamTags :: Maybe [Tag]
+  } deriving (Show, Eq)
+
+instance ToResourceProperties QLDBStream where
+  toResourceProperties QLDBStream{..} =
+    ResourceProperties
+    { resourcePropertiesType = "AWS::QLDB::Stream"
+    , resourcePropertiesProperties =
+        hashMapFromList $ catMaybes
+        [ fmap (("ExclusiveEndTime",) . toJSON) _qLDBStreamExclusiveEndTime
+        , (Just . ("InclusiveStartTime",) . toJSON) _qLDBStreamInclusiveStartTime
+        , (Just . ("KinesisConfiguration",) . toJSON) _qLDBStreamKinesisConfiguration
+        , (Just . ("LedgerName",) . toJSON) _qLDBStreamLedgerName
+        , (Just . ("RoleArn",) . toJSON) _qLDBStreamRoleArn
+        , (Just . ("StreamName",) . toJSON) _qLDBStreamStreamName
+        , fmap (("Tags",) . toJSON) _qLDBStreamTags
+        ]
+    }
+
+-- | Constructor for 'QLDBStream' containing required fields as arguments.
+qldbStream
+  :: Val Text -- ^ 'qldbsInclusiveStartTime'
+  -> QLDBStreamKinesisConfiguration -- ^ 'qldbsKinesisConfiguration'
+  -> Val Text -- ^ 'qldbsLedgerName'
+  -> Val Text -- ^ 'qldbsRoleArn'
+  -> Val Text -- ^ 'qldbsStreamName'
+  -> QLDBStream
+qldbStream inclusiveStartTimearg kinesisConfigurationarg ledgerNamearg roleArnarg streamNamearg =
+  QLDBStream
+  { _qLDBStreamExclusiveEndTime = Nothing
+  , _qLDBStreamInclusiveStartTime = inclusiveStartTimearg
+  , _qLDBStreamKinesisConfiguration = kinesisConfigurationarg
+  , _qLDBStreamLedgerName = ledgerNamearg
+  , _qLDBStreamRoleArn = roleArnarg
+  , _qLDBStreamStreamName = streamNamearg
+  , _qLDBStreamTags = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-exclusiveendtime
+qldbsExclusiveEndTime :: Lens' QLDBStream (Maybe (Val Text))
+qldbsExclusiveEndTime = lens _qLDBStreamExclusiveEndTime (\s a -> s { _qLDBStreamExclusiveEndTime = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-inclusivestarttime
+qldbsInclusiveStartTime :: Lens' QLDBStream (Val Text)
+qldbsInclusiveStartTime = lens _qLDBStreamInclusiveStartTime (\s a -> s { _qLDBStreamInclusiveStartTime = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-kinesisconfiguration
+qldbsKinesisConfiguration :: Lens' QLDBStream QLDBStreamKinesisConfiguration
+qldbsKinesisConfiguration = lens _qLDBStreamKinesisConfiguration (\s a -> s { _qLDBStreamKinesisConfiguration = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-ledgername
+qldbsLedgerName :: Lens' QLDBStream (Val Text)
+qldbsLedgerName = lens _qLDBStreamLedgerName (\s a -> s { _qLDBStreamLedgerName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-rolearn
+qldbsRoleArn :: Lens' QLDBStream (Val Text)
+qldbsRoleArn = lens _qLDBStreamRoleArn (\s a -> s { _qLDBStreamRoleArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-streamname
+qldbsStreamName :: Lens' QLDBStream (Val Text)
+qldbsStreamName = lens _qLDBStreamStreamName (\s a -> s { _qLDBStreamStreamName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html#cfn-qldb-stream-tags
+qldbsTags :: Lens' QLDBStream (Maybe [Tag])
+qldbsTags = lens _qLDBStreamTags (\s a -> s { _qLDBStreamTags = a })
diff --git a/library-gen/Stratosphere/Resources/RDSDBProxyTargetGroup.hs b/library-gen/Stratosphere/Resources/RDSDBProxyTargetGroup.hs
--- a/library-gen/Stratosphere/Resources/RDSDBProxyTargetGroup.hs
+++ b/library-gen/Stratosphere/Resources/RDSDBProxyTargetGroup.hs
@@ -18,6 +18,7 @@
   , _rDSDBProxyTargetGroupDBClusterIdentifiers :: Maybe (ValList Text)
   , _rDSDBProxyTargetGroupDBInstanceIdentifiers :: Maybe (ValList Text)
   , _rDSDBProxyTargetGroupDBProxyName :: Val Text
+  , _rDSDBProxyTargetGroupTargetGroupName :: Val Text
   } deriving (Show, Eq)
 
 instance ToResourceProperties RDSDBProxyTargetGroup where
@@ -30,6 +31,7 @@
         , fmap (("DBClusterIdentifiers",) . toJSON) _rDSDBProxyTargetGroupDBClusterIdentifiers
         , fmap (("DBInstanceIdentifiers",) . toJSON) _rDSDBProxyTargetGroupDBInstanceIdentifiers
         , (Just . ("DBProxyName",) . toJSON) _rDSDBProxyTargetGroupDBProxyName
+        , (Just . ("TargetGroupName",) . toJSON) _rDSDBProxyTargetGroupTargetGroupName
         ]
     }
 
@@ -37,13 +39,15 @@
 -- arguments.
 rdsdbProxyTargetGroup
   :: Val Text -- ^ 'rdsdbptgDBProxyName'
+  -> Val Text -- ^ 'rdsdbptgTargetGroupName'
   -> RDSDBProxyTargetGroup
-rdsdbProxyTargetGroup dBProxyNamearg =
+rdsdbProxyTargetGroup dBProxyNamearg targetGroupNamearg =
   RDSDBProxyTargetGroup
   { _rDSDBProxyTargetGroupConnectionPoolConfigurationInfo = Nothing
   , _rDSDBProxyTargetGroupDBClusterIdentifiers = Nothing
   , _rDSDBProxyTargetGroupDBInstanceIdentifiers = Nothing
   , _rDSDBProxyTargetGroupDBProxyName = dBProxyNamearg
+  , _rDSDBProxyTargetGroupTargetGroupName = targetGroupNamearg
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html#cfn-rds-dbproxytargetgroup-connectionpoolconfigurationinfo
@@ -61,3 +65,7 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html#cfn-rds-dbproxytargetgroup-dbproxyname
 rdsdbptgDBProxyName :: Lens' RDSDBProxyTargetGroup (Val Text)
 rdsdbptgDBProxyName = lens _rDSDBProxyTargetGroupDBProxyName (\s a -> s { _rDSDBProxyTargetGroupDBProxyName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html#cfn-rds-dbproxytargetgroup-targetgroupname
+rdsdbptgTargetGroupName :: Lens' RDSDBProxyTargetGroup (Val Text)
+rdsdbptgTargetGroupName = lens _rDSDBProxyTargetGroupTargetGroupName (\s a -> s { _rDSDBProxyTargetGroupTargetGroupName = a })
diff --git a/library-gen/Stratosphere/Resources/SSMAssociation.hs b/library-gen/Stratosphere/Resources/SSMAssociation.hs
--- a/library-gen/Stratosphere/Resources/SSMAssociation.hs
+++ b/library-gen/Stratosphere/Resources/SSMAssociation.hs
@@ -15,7 +15,8 @@
 -- more convenient constructor.
 data SSMAssociation =
   SSMAssociation
-  { _sSMAssociationAssociationName :: Maybe (Val Text)
+  { _sSMAssociationApplyOnlyAtCronInterval :: Maybe (Val Bool)
+  , _sSMAssociationAssociationName :: Maybe (Val Text)
   , _sSMAssociationAutomationTargetParameterName :: Maybe (Val Text)
   , _sSMAssociationComplianceSeverity :: Maybe (Val Text)
   , _sSMAssociationDocumentVersion :: Maybe (Val Text)
@@ -36,7 +37,8 @@
     { resourcePropertiesType = "AWS::SSM::Association"
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
-        [ fmap (("AssociationName",) . toJSON) _sSMAssociationAssociationName
+        [ fmap (("ApplyOnlyAtCronInterval",) . toJSON) _sSMAssociationApplyOnlyAtCronInterval
+        , fmap (("AssociationName",) . toJSON) _sSMAssociationAssociationName
         , fmap (("AutomationTargetParameterName",) . toJSON) _sSMAssociationAutomationTargetParameterName
         , fmap (("ComplianceSeverity",) . toJSON) _sSMAssociationComplianceSeverity
         , fmap (("DocumentVersion",) . toJSON) _sSMAssociationDocumentVersion
@@ -58,7 +60,8 @@
   -> SSMAssociation
 ssmAssociation namearg =
   SSMAssociation
-  { _sSMAssociationAssociationName = Nothing
+  { _sSMAssociationApplyOnlyAtCronInterval = Nothing
+  , _sSMAssociationAssociationName = Nothing
   , _sSMAssociationAutomationTargetParameterName = Nothing
   , _sSMAssociationComplianceSeverity = Nothing
   , _sSMAssociationDocumentVersion = Nothing
@@ -72,6 +75,10 @@
   , _sSMAssociationTargets = Nothing
   , _sSMAssociationWaitForSuccessTimeoutSeconds = Nothing
   }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-applyonlyatcroninterval
+ssmaApplyOnlyAtCronInterval :: Lens' SSMAssociation (Maybe (Val Bool))
+ssmaApplyOnlyAtCronInterval = lens _sSMAssociationApplyOnlyAtCronInterval (\s a -> s { _sSMAssociationApplyOnlyAtCronInterval = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-associationname
 ssmaAssociationName :: Lens' SSMAssociation (Maybe (Val Text))
diff --git a/library-gen/Stratosphere/Resources/SSMMaintenanceWindow.hs b/library-gen/Stratosphere/Resources/SSMMaintenanceWindow.hs
--- a/library-gen/Stratosphere/Resources/SSMMaintenanceWindow.hs
+++ b/library-gen/Stratosphere/Resources/SSMMaintenanceWindow.hs
@@ -21,6 +21,7 @@
   , _sSMMaintenanceWindowEndDate :: Maybe (Val Text)
   , _sSMMaintenanceWindowName :: Val Text
   , _sSMMaintenanceWindowSchedule :: Val Text
+  , _sSMMaintenanceWindowScheduleOffset :: Maybe (Val Integer)
   , _sSMMaintenanceWindowScheduleTimezone :: Maybe (Val Text)
   , _sSMMaintenanceWindowStartDate :: Maybe (Val Text)
   , _sSMMaintenanceWindowTags :: Maybe [Tag]
@@ -39,6 +40,7 @@
         , fmap (("EndDate",) . toJSON) _sSMMaintenanceWindowEndDate
         , (Just . ("Name",) . toJSON) _sSMMaintenanceWindowName
         , (Just . ("Schedule",) . toJSON) _sSMMaintenanceWindowSchedule
+        , fmap (("ScheduleOffset",) . toJSON) _sSMMaintenanceWindowScheduleOffset
         , fmap (("ScheduleTimezone",) . toJSON) _sSMMaintenanceWindowScheduleTimezone
         , fmap (("StartDate",) . toJSON) _sSMMaintenanceWindowStartDate
         , fmap (("Tags",) . toJSON) _sSMMaintenanceWindowTags
@@ -63,6 +65,7 @@
   , _sSMMaintenanceWindowEndDate = Nothing
   , _sSMMaintenanceWindowName = namearg
   , _sSMMaintenanceWindowSchedule = schedulearg
+  , _sSMMaintenanceWindowScheduleOffset = Nothing
   , _sSMMaintenanceWindowScheduleTimezone = Nothing
   , _sSMMaintenanceWindowStartDate = Nothing
   , _sSMMaintenanceWindowTags = Nothing
@@ -95,6 +98,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-schedule
 ssmmwSchedule :: Lens' SSMMaintenanceWindow (Val Text)
 ssmmwSchedule = lens _sSMMaintenanceWindowSchedule (\s a -> s { _sSMMaintenanceWindowSchedule = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-scheduleoffset
+ssmmwScheduleOffset :: Lens' SSMMaintenanceWindow (Maybe (Val Integer))
+ssmmwScheduleOffset = lens _sSMMaintenanceWindowScheduleOffset (\s a -> s { _sSMMaintenanceWindowScheduleOffset = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html#cfn-ssm-maintenancewindow-scheduletimezone
 ssmmwScheduleTimezone :: Lens' SSMMaintenanceWindow (Maybe (Val Text))
diff --git a/library-gen/Stratosphere/Resources/SageMakerEndpointConfig.hs b/library-gen/Stratosphere/Resources/SageMakerEndpointConfig.hs
--- a/library-gen/Stratosphere/Resources/SageMakerEndpointConfig.hs
+++ b/library-gen/Stratosphere/Resources/SageMakerEndpointConfig.hs
@@ -8,6 +8,7 @@
 module Stratosphere.Resources.SageMakerEndpointConfig where
 
 import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerEndpointConfigDataCaptureConfig
 import Stratosphere.ResourceProperties.SageMakerEndpointConfigProductionVariant
 import Stratosphere.ResourceProperties.Tag
 
@@ -15,7 +16,8 @@
 -- 'sageMakerEndpointConfig' for a more convenient constructor.
 data SageMakerEndpointConfig =
   SageMakerEndpointConfig
-  { _sageMakerEndpointConfigEndpointConfigName :: Maybe (Val Text)
+  { _sageMakerEndpointConfigDataCaptureConfig :: Maybe SageMakerEndpointConfigDataCaptureConfig
+  , _sageMakerEndpointConfigEndpointConfigName :: Maybe (Val Text)
   , _sageMakerEndpointConfigKmsKeyId :: Maybe (Val Text)
   , _sageMakerEndpointConfigProductionVariants :: [SageMakerEndpointConfigProductionVariant]
   , _sageMakerEndpointConfigTags :: Maybe [Tag]
@@ -27,7 +29,8 @@
     { resourcePropertiesType = "AWS::SageMaker::EndpointConfig"
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
-        [ fmap (("EndpointConfigName",) . toJSON) _sageMakerEndpointConfigEndpointConfigName
+        [ fmap (("DataCaptureConfig",) . toJSON) _sageMakerEndpointConfigDataCaptureConfig
+        , fmap (("EndpointConfigName",) . toJSON) _sageMakerEndpointConfigEndpointConfigName
         , fmap (("KmsKeyId",) . toJSON) _sageMakerEndpointConfigKmsKeyId
         , (Just . ("ProductionVariants",) . toJSON) _sageMakerEndpointConfigProductionVariants
         , fmap (("Tags",) . toJSON) _sageMakerEndpointConfigTags
@@ -41,11 +44,16 @@
   -> SageMakerEndpointConfig
 sageMakerEndpointConfig productionVariantsarg =
   SageMakerEndpointConfig
-  { _sageMakerEndpointConfigEndpointConfigName = Nothing
+  { _sageMakerEndpointConfigDataCaptureConfig = Nothing
+  , _sageMakerEndpointConfigEndpointConfigName = Nothing
   , _sageMakerEndpointConfigKmsKeyId = Nothing
   , _sageMakerEndpointConfigProductionVariants = productionVariantsarg
   , _sageMakerEndpointConfigTags = Nothing
   }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html#cfn-sagemaker-endpointconfig-datacaptureconfig
+smecDataCaptureConfig :: Lens' SageMakerEndpointConfig (Maybe SageMakerEndpointConfigDataCaptureConfig)
+smecDataCaptureConfig = lens _sageMakerEndpointConfigDataCaptureConfig (\s a -> s { _sageMakerEndpointConfigDataCaptureConfig = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html#cfn-sagemaker-endpointconfig-endpointconfigname
 smecEndpointConfigName :: Lens' SageMakerEndpointConfig (Maybe (Val Text))
diff --git a/library-gen/Stratosphere/Resources/SecretsManagerRotationSchedule.hs b/library-gen/Stratosphere/Resources/SecretsManagerRotationSchedule.hs
--- a/library-gen/Stratosphere/Resources/SecretsManagerRotationSchedule.hs
+++ b/library-gen/Stratosphere/Resources/SecretsManagerRotationSchedule.hs
@@ -8,13 +8,15 @@
 module Stratosphere.Resources.SecretsManagerRotationSchedule where
 
 import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SecretsManagerRotationScheduleHostedRotationLambda
 import Stratosphere.ResourceProperties.SecretsManagerRotationScheduleRotationRules
 
 -- | Full data type definition for SecretsManagerRotationSchedule. See
 -- 'secretsManagerRotationSchedule' for a more convenient constructor.
 data SecretsManagerRotationSchedule =
   SecretsManagerRotationSchedule
-  { _secretsManagerRotationScheduleRotationLambdaARN :: Maybe (Val Text)
+  { _secretsManagerRotationScheduleHostedRotationLambda :: Maybe SecretsManagerRotationScheduleHostedRotationLambda
+  , _secretsManagerRotationScheduleRotationLambdaARN :: Maybe (Val Text)
   , _secretsManagerRotationScheduleRotationRules :: Maybe SecretsManagerRotationScheduleRotationRules
   , _secretsManagerRotationScheduleSecretId :: Val Text
   } deriving (Show, Eq)
@@ -25,7 +27,8 @@
     { resourcePropertiesType = "AWS::SecretsManager::RotationSchedule"
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
-        [ fmap (("RotationLambdaARN",) . toJSON) _secretsManagerRotationScheduleRotationLambdaARN
+        [ fmap (("HostedRotationLambda",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambda
+        , fmap (("RotationLambdaARN",) . toJSON) _secretsManagerRotationScheduleRotationLambdaARN
         , fmap (("RotationRules",) . toJSON) _secretsManagerRotationScheduleRotationRules
         , (Just . ("SecretId",) . toJSON) _secretsManagerRotationScheduleSecretId
         ]
@@ -38,10 +41,15 @@
   -> SecretsManagerRotationSchedule
 secretsManagerRotationSchedule secretIdarg =
   SecretsManagerRotationSchedule
-  { _secretsManagerRotationScheduleRotationLambdaARN = Nothing
+  { _secretsManagerRotationScheduleHostedRotationLambda = Nothing
+  , _secretsManagerRotationScheduleRotationLambdaARN = Nothing
   , _secretsManagerRotationScheduleRotationRules = Nothing
   , _secretsManagerRotationScheduleSecretId = secretIdarg
   }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda
+smrsHostedRotationLambda :: Lens' SecretsManagerRotationSchedule (Maybe SecretsManagerRotationScheduleHostedRotationLambda)
+smrsHostedRotationLambda = lens _secretsManagerRotationScheduleHostedRotationLambda (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambda = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html#cfn-secretsmanager-rotationschedule-rotationlambdaarn
 smrsRotationLambdaARN :: Lens' SecretsManagerRotationSchedule (Maybe (Val Text))
diff --git a/library-gen/Stratosphere/Resources/StepFunctionsStateMachine.hs b/library-gen/Stratosphere/Resources/StepFunctionsStateMachine.hs
--- a/library-gen/Stratosphere/Resources/StepFunctionsStateMachine.hs
+++ b/library-gen/Stratosphere/Resources/StepFunctionsStateMachine.hs
@@ -11,6 +11,7 @@
 import Stratosphere.ResourceProperties.StepFunctionsStateMachineS3Location
 import Stratosphere.ResourceProperties.StepFunctionsStateMachineLoggingConfiguration
 import Stratosphere.ResourceProperties.StepFunctionsStateMachineTagsEntry
+import Stratosphere.ResourceProperties.StepFunctionsStateMachineTracingConfiguration
 
 -- | Full data type definition for StepFunctionsStateMachine. See
 -- 'stepFunctionsStateMachine' for a more convenient constructor.
@@ -23,6 +24,7 @@
   , _stepFunctionsStateMachineStateMachineName :: Maybe (Val Text)
   , _stepFunctionsStateMachineStateMachineType :: Maybe (Val Text)
   , _stepFunctionsStateMachineTags :: Maybe [StepFunctionsStateMachineTagsEntry]
+  , _stepFunctionsStateMachineTracingConfiguration :: Maybe StepFunctionsStateMachineTracingConfiguration
   } deriving (Show, Eq)
 
 instance ToResourceProperties StepFunctionsStateMachine where
@@ -38,6 +40,7 @@
         , fmap (("StateMachineName",) . toJSON) _stepFunctionsStateMachineStateMachineName
         , fmap (("StateMachineType",) . toJSON) _stepFunctionsStateMachineStateMachineType
         , fmap (("Tags",) . toJSON) _stepFunctionsStateMachineTags
+        , fmap (("TracingConfiguration",) . toJSON) _stepFunctionsStateMachineTracingConfiguration
         ]
     }
 
@@ -55,6 +58,7 @@
   , _stepFunctionsStateMachineStateMachineName = Nothing
   , _stepFunctionsStateMachineStateMachineType = Nothing
   , _stepFunctionsStateMachineTags = Nothing
+  , _stepFunctionsStateMachineTracingConfiguration = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitions3location
@@ -84,3 +88,7 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tags
 sfsmTags :: Lens' StepFunctionsStateMachine (Maybe [StepFunctionsStateMachineTagsEntry])
 sfsmTags = lens _stepFunctionsStateMachineTags (\s a -> s { _stepFunctionsStateMachineTags = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-tracingconfiguration
+sfsmTracingConfiguration :: Lens' StepFunctionsStateMachine (Maybe StepFunctionsStateMachineTracingConfiguration)
+sfsmTracingConfiguration = lens _stepFunctionsStateMachineTracingConfiguration (\s a -> s { _stepFunctionsStateMachineTracingConfiguration = a })
diff --git a/library-gen/Stratosphere/Resources/SyntheticsCanary.hs b/library-gen/Stratosphere/Resources/SyntheticsCanary.hs
--- a/library-gen/Stratosphere/Resources/SyntheticsCanary.hs
+++ b/library-gen/Stratosphere/Resources/SyntheticsCanary.hs
@@ -23,7 +23,7 @@
   , _syntheticsCanaryExecutionRoleArn :: Val Text
   , _syntheticsCanaryFailureRetentionPeriod :: Maybe (Val Integer)
   , _syntheticsCanaryName :: Val Text
-  , _syntheticsCanaryRunConfig :: SyntheticsCanaryRunConfig
+  , _syntheticsCanaryRunConfig :: Maybe SyntheticsCanaryRunConfig
   , _syntheticsCanaryRuntimeVersion :: Val Text
   , _syntheticsCanarySchedule :: SyntheticsCanarySchedule
   , _syntheticsCanaryStartCanaryAfterCreation :: Val Bool
@@ -43,7 +43,7 @@
         , (Just . ("ExecutionRoleArn",) . toJSON) _syntheticsCanaryExecutionRoleArn
         , fmap (("FailureRetentionPeriod",) . toJSON) _syntheticsCanaryFailureRetentionPeriod
         , (Just . ("Name",) . toJSON) _syntheticsCanaryName
-        , (Just . ("RunConfig",) . toJSON) _syntheticsCanaryRunConfig
+        , fmap (("RunConfig",) . toJSON) _syntheticsCanaryRunConfig
         , (Just . ("RuntimeVersion",) . toJSON) _syntheticsCanaryRuntimeVersion
         , (Just . ("Schedule",) . toJSON) _syntheticsCanarySchedule
         , (Just . ("StartCanaryAfterCreation",) . toJSON) _syntheticsCanaryStartCanaryAfterCreation
@@ -60,19 +60,18 @@
   -> SyntheticsCanaryCode -- ^ 'scCode'
   -> Val Text -- ^ 'scExecutionRoleArn'
   -> Val Text -- ^ 'scName'
-  -> SyntheticsCanaryRunConfig -- ^ 'scRunConfig'
   -> Val Text -- ^ 'scRuntimeVersion'
   -> SyntheticsCanarySchedule -- ^ 'scSchedule'
   -> Val Bool -- ^ 'scStartCanaryAfterCreation'
   -> SyntheticsCanary
-syntheticsCanary artifactS3Locationarg codearg executionRoleArnarg namearg runConfigarg runtimeVersionarg schedulearg startCanaryAfterCreationarg =
+syntheticsCanary artifactS3Locationarg codearg executionRoleArnarg namearg runtimeVersionarg schedulearg startCanaryAfterCreationarg =
   SyntheticsCanary
   { _syntheticsCanaryArtifactS3Location = artifactS3Locationarg
   , _syntheticsCanaryCode = codearg
   , _syntheticsCanaryExecutionRoleArn = executionRoleArnarg
   , _syntheticsCanaryFailureRetentionPeriod = Nothing
   , _syntheticsCanaryName = namearg
-  , _syntheticsCanaryRunConfig = runConfigarg
+  , _syntheticsCanaryRunConfig = Nothing
   , _syntheticsCanaryRuntimeVersion = runtimeVersionarg
   , _syntheticsCanarySchedule = schedulearg
   , _syntheticsCanaryStartCanaryAfterCreation = startCanaryAfterCreationarg
@@ -102,7 +101,7 @@
 scName = lens _syntheticsCanaryName (\s a -> s { _syntheticsCanaryName = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-runconfig
-scRunConfig :: Lens' SyntheticsCanary SyntheticsCanaryRunConfig
+scRunConfig :: Lens' SyntheticsCanary (Maybe SyntheticsCanaryRunConfig)
 scRunConfig = lens _syntheticsCanaryRunConfig (\s a -> s { _syntheticsCanaryRunConfig = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html#cfn-synthetics-canary-runtimeversion
diff --git a/stratosphere.cabal b/stratosphere.cabal
--- a/stratosphere.cabal
+++ b/stratosphere.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 0f3595917beabb179bd54f483b5f0bf8fd232482a243e91153db9f49d64f6c0f
+-- hash: 75b46048b970d5d4fe69f7e229e225106bbd2db14435f795fdd1ca4456efdf0a
 
 name:           stratosphere
-version:        0.55.0
+version:        0.56.0
 synopsis:       EDSL for AWS CloudFormation
 description:    EDSL for AWS CloudFormation
 category:       AWS, Cloud
@@ -57,8 +57,12 @@
       Stratosphere.ResourceProperties.ACMPCACertificateValidity
       Stratosphere.ResourceProperties.AmazonMQBrokerConfigurationId
       Stratosphere.ResourceProperties.AmazonMQBrokerEncryptionOptions
+      Stratosphere.ResourceProperties.AmazonMQBrokerInterBrokerCred
+      Stratosphere.ResourceProperties.AmazonMQBrokerLdapMetadata
+      Stratosphere.ResourceProperties.AmazonMQBrokerLdapServerMetadata
       Stratosphere.ResourceProperties.AmazonMQBrokerLogList
       Stratosphere.ResourceProperties.AmazonMQBrokerMaintenanceWindow
+      Stratosphere.ResourceProperties.AmazonMQBrokerServerMetadata
       Stratosphere.ResourceProperties.AmazonMQBrokerTagsEntry
       Stratosphere.ResourceProperties.AmazonMQBrokerUser
       Stratosphere.ResourceProperties.AmazonMQConfigurationAssociationConfigurationId
@@ -91,6 +95,11 @@
       Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings
       Stratosphere.ResourceProperties.ApiGatewayV2ApiBodyS3Location
       Stratosphere.ResourceProperties.ApiGatewayV2ApiCors
+      Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesAccessLogSettings
+      Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesIntegrationOverrides
+      Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesRouteOverrides
+      Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesRouteSettings
+      Stratosphere.ResourceProperties.ApiGatewayV2ApiGatewayManagedOverridesStageOverrides
       Stratosphere.ResourceProperties.ApiGatewayV2AuthorizerJWTConfiguration
       Stratosphere.ResourceProperties.ApiGatewayV2DomainNameDomainNameConfiguration
       Stratosphere.ResourceProperties.ApiGatewayV2IntegrationTlsConfig
@@ -123,16 +132,19 @@
       Stratosphere.ResourceProperties.AppMeshRouteGrpcRouteMatch
       Stratosphere.ResourceProperties.AppMeshRouteGrpcRouteMetadata
       Stratosphere.ResourceProperties.AppMeshRouteGrpcRouteMetadataMatchMethod
+      Stratosphere.ResourceProperties.AppMeshRouteGrpcTimeout
       Stratosphere.ResourceProperties.AppMeshRouteHeaderMatchMethod
       Stratosphere.ResourceProperties.AppMeshRouteHttpRetryPolicy
       Stratosphere.ResourceProperties.AppMeshRouteHttpRoute
       Stratosphere.ResourceProperties.AppMeshRouteHttpRouteAction
       Stratosphere.ResourceProperties.AppMeshRouteHttpRouteHeader
       Stratosphere.ResourceProperties.AppMeshRouteHttpRouteMatch
+      Stratosphere.ResourceProperties.AppMeshRouteHttpTimeout
       Stratosphere.ResourceProperties.AppMeshRouteMatchRange
       Stratosphere.ResourceProperties.AppMeshRouteRouteSpec
       Stratosphere.ResourceProperties.AppMeshRouteTcpRoute
       Stratosphere.ResourceProperties.AppMeshRouteTcpRouteAction
+      Stratosphere.ResourceProperties.AppMeshRouteTcpTimeout
       Stratosphere.ResourceProperties.AppMeshRouteWeightedTarget
       Stratosphere.ResourceProperties.AppMeshVirtualNodeAccessLog
       Stratosphere.ResourceProperties.AppMeshVirtualNodeAwsCloudMapInstanceAttribute
@@ -142,9 +154,13 @@
       Stratosphere.ResourceProperties.AppMeshVirtualNodeClientPolicy
       Stratosphere.ResourceProperties.AppMeshVirtualNodeClientPolicyTls
       Stratosphere.ResourceProperties.AppMeshVirtualNodeDnsServiceDiscovery
+      Stratosphere.ResourceProperties.AppMeshVirtualNodeDuration
       Stratosphere.ResourceProperties.AppMeshVirtualNodeFileAccessLog
+      Stratosphere.ResourceProperties.AppMeshVirtualNodeGrpcTimeout
       Stratosphere.ResourceProperties.AppMeshVirtualNodeHealthCheck
+      Stratosphere.ResourceProperties.AppMeshVirtualNodeHttpTimeout
       Stratosphere.ResourceProperties.AppMeshVirtualNodeListener
+      Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTimeout
       Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTls
       Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTlsAcmCertificate
       Stratosphere.ResourceProperties.AppMeshVirtualNodeListenerTlsCertificate
@@ -152,6 +168,7 @@
       Stratosphere.ResourceProperties.AppMeshVirtualNodeLogging
       Stratosphere.ResourceProperties.AppMeshVirtualNodePortMapping
       Stratosphere.ResourceProperties.AppMeshVirtualNodeServiceDiscovery
+      Stratosphere.ResourceProperties.AppMeshVirtualNodeTcpTimeout
       Stratosphere.ResourceProperties.AppMeshVirtualNodeTlsValidationContext
       Stratosphere.ResourceProperties.AppMeshVirtualNodeTlsValidationContextAcmTrust
       Stratosphere.ResourceProperties.AppMeshVirtualNodeTlsValidationContextFileTrust
@@ -197,6 +214,7 @@
       Stratosphere.ResourceProperties.ASKSkillAuthenticationConfiguration
       Stratosphere.ResourceProperties.ASKSkillOverrides
       Stratosphere.ResourceProperties.ASKSkillSkillPackage
+      Stratosphere.ResourceProperties.AthenaDataCatalogTags
       Stratosphere.ResourceProperties.AthenaWorkGroupEncryptionConfiguration
       Stratosphere.ResourceProperties.AthenaWorkGroupResultConfiguration
       Stratosphere.ResourceProperties.AthenaWorkGroupResultConfigurationUpdates
@@ -300,6 +318,7 @@
       Stratosphere.ResourceProperties.CloudWatchAnomalyDetectorDimension
       Stratosphere.ResourceProperties.CloudWatchAnomalyDetectorRange
       Stratosphere.ResourceProperties.CodeBuildProjectArtifacts
+      Stratosphere.ResourceProperties.CodeBuildProjectBuildStatusConfig
       Stratosphere.ResourceProperties.CodeBuildProjectCloudWatchLogsConfig
       Stratosphere.ResourceProperties.CodeBuildProjectEnvironment
       Stratosphere.ResourceProperties.CodeBuildProjectEnvironmentVariable
@@ -499,6 +518,7 @@
       Stratosphere.ResourceProperties.EC2NetworkAclEntryPortRange
       Stratosphere.ResourceProperties.EC2NetworkInterfaceInstanceIpv6Address
       Stratosphere.ResourceProperties.EC2NetworkInterfacePrivateIpAddressSpecification
+      Stratosphere.ResourceProperties.EC2PrefixListEntry
       Stratosphere.ResourceProperties.EC2SecurityGroupEgressProperty
       Stratosphere.ResourceProperties.EC2SecurityGroupIngressProperty
       Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMapping
@@ -570,6 +590,7 @@
       Stratosphere.ResourceProperties.EFSAccessPointCreationInfo
       Stratosphere.ResourceProperties.EFSAccessPointPosixUser
       Stratosphere.ResourceProperties.EFSAccessPointRootDirectory
+      Stratosphere.ResourceProperties.EFSFileSystemBackupPolicy
       Stratosphere.ResourceProperties.EFSFileSystemElasticFileSystemTag
       Stratosphere.ResourceProperties.EFSFileSystemLifecyclePolicy
       Stratosphere.ResourceProperties.EKSClusterEncryptionConfig
@@ -626,11 +647,14 @@
       Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupMatcher
       Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetDescription
       Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetGroupAttribute
+      Stratosphere.ResourceProperties.ElasticsearchDomainAdvancedSecurityOptionsInput
       Stratosphere.ResourceProperties.ElasticsearchDomainCognitoOptions
+      Stratosphere.ResourceProperties.ElasticsearchDomainDomainEndpointOptions
       Stratosphere.ResourceProperties.ElasticsearchDomainEBSOptions
       Stratosphere.ResourceProperties.ElasticsearchDomainElasticsearchClusterConfig
       Stratosphere.ResourceProperties.ElasticsearchDomainEncryptionAtRestOptions
       Stratosphere.ResourceProperties.ElasticsearchDomainLogPublishingOption
+      Stratosphere.ResourceProperties.ElasticsearchDomainMasterUserOptions
       Stratosphere.ResourceProperties.ElasticsearchDomainNodeToNodeEncryptionOptions
       Stratosphere.ResourceProperties.ElasticsearchDomainSnapshotOptions
       Stratosphere.ResourceProperties.ElasticsearchDomainVPCOptions
@@ -1037,6 +1061,7 @@
       Stratosphere.ResourceProperties.LambdaFunctionCode
       Stratosphere.ResourceProperties.LambdaFunctionDeadLetterConfig
       Stratosphere.ResourceProperties.LambdaFunctionEnvironment
+      Stratosphere.ResourceProperties.LambdaFunctionFileSystemConfig
       Stratosphere.ResourceProperties.LambdaFunctionTracingConfig
       Stratosphere.ResourceProperties.LambdaFunctionVpcConfig
       Stratosphere.ResourceProperties.LambdaLayerVersionContent
@@ -1172,6 +1197,7 @@
       Stratosphere.ResourceProperties.PinpointSegmentSegmentGroups
       Stratosphere.ResourceProperties.PinpointSegmentSetDimension
       Stratosphere.ResourceProperties.PinpointSegmentSourceSegments
+      Stratosphere.ResourceProperties.QLDBStreamKinesisConfiguration
       Stratosphere.ResourceProperties.RDSDBClusterDBClusterRole
       Stratosphere.ResourceProperties.RDSDBClusterScalingConfiguration
       Stratosphere.ResourceProperties.RDSDBInstanceDBInstanceRole
@@ -1259,6 +1285,9 @@
       Stratosphere.ResourceProperties.S3BucketVersioningConfiguration
       Stratosphere.ResourceProperties.S3BucketWebsiteConfiguration
       Stratosphere.ResourceProperties.SageMakerCodeRepositoryGitConfig
+      Stratosphere.ResourceProperties.SageMakerEndpointConfigCaptureContentTypeHeader
+      Stratosphere.ResourceProperties.SageMakerEndpointConfigCaptureOption
+      Stratosphere.ResourceProperties.SageMakerEndpointConfigDataCaptureConfig
       Stratosphere.ResourceProperties.SageMakerEndpointConfigProductionVariant
       Stratosphere.ResourceProperties.SageMakerEndpointVariantProperty
       Stratosphere.ResourceProperties.SageMakerModelContainerDefinition
@@ -1267,6 +1296,7 @@
       Stratosphere.ResourceProperties.SageMakerWorkteamCognitoMemberDefinition
       Stratosphere.ResourceProperties.SageMakerWorkteamMemberDefinition
       Stratosphere.ResourceProperties.SageMakerWorkteamNotificationConfiguration
+      Stratosphere.ResourceProperties.SecretsManagerRotationScheduleHostedRotationLambda
       Stratosphere.ResourceProperties.SecretsManagerRotationScheduleRotationRules
       Stratosphere.ResourceProperties.SecretsManagerSecretGenerateSecretString
       Stratosphere.ResourceProperties.ServiceCatalogCloudFormationProductProvisioningArtifactProperties
@@ -1319,6 +1349,7 @@
       Stratosphere.ResourceProperties.StepFunctionsStateMachineLoggingConfiguration
       Stratosphere.ResourceProperties.StepFunctionsStateMachineS3Location
       Stratosphere.ResourceProperties.StepFunctionsStateMachineTagsEntry
+      Stratosphere.ResourceProperties.StepFunctionsStateMachineTracingConfiguration
       Stratosphere.ResourceProperties.SyntheticsCanaryCode
       Stratosphere.ResourceProperties.SyntheticsCanaryRunConfig
       Stratosphere.ResourceProperties.SyntheticsCanarySchedule
@@ -1353,7 +1384,9 @@
       Stratosphere.ResourceProperties.WAFv2RuleGroupAndStatementTwo
       Stratosphere.ResourceProperties.WAFv2RuleGroupByteMatchStatement
       Stratosphere.ResourceProperties.WAFv2RuleGroupFieldToMatch
+      Stratosphere.ResourceProperties.WAFv2RuleGroupForwardedIPConfiguration
       Stratosphere.ResourceProperties.WAFv2RuleGroupGeoMatchStatement
+      Stratosphere.ResourceProperties.WAFv2RuleGroupIPSetForwardedIPConfiguration
       Stratosphere.ResourceProperties.WAFv2RuleGroupIPSetReferenceStatement
       Stratosphere.ResourceProperties.WAFv2RuleGroupNotStatementOne
       Stratosphere.ResourceProperties.WAFv2RuleGroupNotStatementTwo
@@ -1378,7 +1411,9 @@
       Stratosphere.ResourceProperties.WAFv2WebACLDefaultAction
       Stratosphere.ResourceProperties.WAFv2WebACLExcludedRule
       Stratosphere.ResourceProperties.WAFv2WebACLFieldToMatch
+      Stratosphere.ResourceProperties.WAFv2WebACLForwardedIPConfiguration
       Stratosphere.ResourceProperties.WAFv2WebACLGeoMatchStatement
+      Stratosphere.ResourceProperties.WAFv2WebACLIPSetForwardedIPConfiguration
       Stratosphere.ResourceProperties.WAFv2WebACLIPSetReferenceStatement
       Stratosphere.ResourceProperties.WAFv2WebACLManagedRuleGroupStatement
       Stratosphere.ResourceProperties.WAFv2WebACLNotStatementOne
@@ -1435,6 +1470,7 @@
       Stratosphere.Resources.ApiGatewayUsagePlan
       Stratosphere.Resources.ApiGatewayUsagePlanKey
       Stratosphere.Resources.ApiGatewayV2Api
+      Stratosphere.Resources.ApiGatewayV2ApiGatewayManagedOverrides
       Stratosphere.Resources.ApiGatewayV2ApiMapping
       Stratosphere.Resources.ApiGatewayV2Authorizer
       Stratosphere.Resources.ApiGatewayV2Deployment
@@ -1445,6 +1481,7 @@
       Stratosphere.Resources.ApiGatewayV2Route
       Stratosphere.Resources.ApiGatewayV2RouteResponse
       Stratosphere.Resources.ApiGatewayV2Stage
+      Stratosphere.Resources.ApiGatewayV2VpcLink
       Stratosphere.Resources.ApiGatewayVpcLink
       Stratosphere.Resources.AppConfigApplication
       Stratosphere.Resources.AppConfigConfigurationProfile
@@ -1474,6 +1511,7 @@
       Stratosphere.Resources.AppSyncGraphQLSchema
       Stratosphere.Resources.AppSyncResolver
       Stratosphere.Resources.ASKSkill
+      Stratosphere.Resources.AthenaDataCatalog
       Stratosphere.Resources.AthenaNamedQuery
       Stratosphere.Resources.AthenaWorkGroup
       Stratosphere.Resources.AutoScalingAutoScalingGroup
@@ -1590,6 +1628,7 @@
       Stratosphere.Resources.EC2NetworkInterfaceAttachment
       Stratosphere.Resources.EC2NetworkInterfacePermission
       Stratosphere.Resources.EC2PlacementGroup
+      Stratosphere.Resources.EC2PrefixList
       Stratosphere.Resources.EC2Route
       Stratosphere.Resources.EC2RouteTable
       Stratosphere.Resources.EC2SecurityGroup
@@ -1833,6 +1872,7 @@
       Stratosphere.Resources.PinpointSmsTemplate
       Stratosphere.Resources.PinpointVoiceChannel
       Stratosphere.Resources.QLDBLedger
+      Stratosphere.Resources.QLDBStream
       Stratosphere.Resources.RAMResourceShare
       Stratosphere.Resources.RDSDBCluster
       Stratosphere.Resources.RDSDBClusterParameterGroup
