diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,11 @@
 # Change Log
 
+## 0.58.0
+
+* Update resource specification document to version 17.0.0
+* Added `.cabal` files to repo (#179)
+* Added `PATCH` constructor for `HttpMethod` (#176)
+
 ## 0.57.0
 
 * Update resource specification document to version 16.3.0
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationAlarm.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationAlarm.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationAlarm.hs
@@ -0,0 +1,46 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-alarm.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationAlarm where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ApplicationInsightsApplicationAlarm. See
+-- 'applicationInsightsApplicationAlarm' for a more convenient constructor.
+data ApplicationInsightsApplicationAlarm =
+  ApplicationInsightsApplicationAlarm
+  { _applicationInsightsApplicationAlarmAlarmName :: Val Text
+  , _applicationInsightsApplicationAlarmSeverity :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationAlarm where
+  toJSON ApplicationInsightsApplicationAlarm{..} =
+    object $
+    catMaybes
+    [ (Just . ("AlarmName",) . toJSON) _applicationInsightsApplicationAlarmAlarmName
+    , fmap (("Severity",) . toJSON) _applicationInsightsApplicationAlarmSeverity
+    ]
+
+-- | Constructor for 'ApplicationInsightsApplicationAlarm' containing required
+-- fields as arguments.
+applicationInsightsApplicationAlarm
+  :: Val Text -- ^ 'aiaaAlarmName'
+  -> ApplicationInsightsApplicationAlarm
+applicationInsightsApplicationAlarm alarmNamearg =
+  ApplicationInsightsApplicationAlarm
+  { _applicationInsightsApplicationAlarmAlarmName = alarmNamearg
+  , _applicationInsightsApplicationAlarmSeverity = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-alarm.html#cfn-applicationinsights-application-alarm-alarmname
+aiaaAlarmName :: Lens' ApplicationInsightsApplicationAlarm (Val Text)
+aiaaAlarmName = lens _applicationInsightsApplicationAlarmAlarmName (\s a -> s { _applicationInsightsApplicationAlarmAlarmName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-alarm.html#cfn-applicationinsights-application-alarm-severity
+aiaaSeverity :: Lens' ApplicationInsightsApplicationAlarm (Maybe (Val Text))
+aiaaSeverity = lens _applicationInsightsApplicationAlarmSeverity (\s a -> s { _applicationInsightsApplicationAlarmSeverity = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationAlarmMetric.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationAlarmMetric.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationAlarmMetric.hs
@@ -0,0 +1,40 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-alarmmetric.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationAlarmMetric where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ApplicationInsightsApplicationAlarmMetric.
+-- See 'applicationInsightsApplicationAlarmMetric' for a more convenient
+-- constructor.
+data ApplicationInsightsApplicationAlarmMetric =
+  ApplicationInsightsApplicationAlarmMetric
+  { _applicationInsightsApplicationAlarmMetricAlarmMetricName :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationAlarmMetric where
+  toJSON ApplicationInsightsApplicationAlarmMetric{..} =
+    object $
+    catMaybes
+    [ (Just . ("AlarmMetricName",) . toJSON) _applicationInsightsApplicationAlarmMetricAlarmMetricName
+    ]
+
+-- | Constructor for 'ApplicationInsightsApplicationAlarmMetric' containing
+-- required fields as arguments.
+applicationInsightsApplicationAlarmMetric
+  :: Val Text -- ^ 'aiaamAlarmMetricName'
+  -> ApplicationInsightsApplicationAlarmMetric
+applicationInsightsApplicationAlarmMetric alarmMetricNamearg =
+  ApplicationInsightsApplicationAlarmMetric
+  { _applicationInsightsApplicationAlarmMetricAlarmMetricName = alarmMetricNamearg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-alarmmetric.html#cfn-applicationinsights-application-alarmmetric-alarmmetricname
+aiaamAlarmMetricName :: Lens' ApplicationInsightsApplicationAlarmMetric (Val Text)
+aiaamAlarmMetricName = lens _applicationInsightsApplicationAlarmMetricAlarmMetricName (\s a -> s { _applicationInsightsApplicationAlarmMetricAlarmMetricName = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationComponentConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationComponentConfiguration.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationComponentConfiguration.hs
@@ -0,0 +1,48 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentconfiguration.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationComponentConfiguration where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationConfigurationDetails
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationSubComponentTypeConfiguration
+
+-- | Full data type definition for
+-- ApplicationInsightsApplicationComponentConfiguration. See
+-- 'applicationInsightsApplicationComponentConfiguration' for a more
+-- convenient constructor.
+data ApplicationInsightsApplicationComponentConfiguration =
+  ApplicationInsightsApplicationComponentConfiguration
+  { _applicationInsightsApplicationComponentConfigurationConfigurationDetails :: Maybe ApplicationInsightsApplicationConfigurationDetails
+  , _applicationInsightsApplicationComponentConfigurationSubComponentTypeConfigurations :: Maybe [ApplicationInsightsApplicationSubComponentTypeConfiguration]
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationComponentConfiguration where
+  toJSON ApplicationInsightsApplicationComponentConfiguration{..} =
+    object $
+    catMaybes
+    [ fmap (("ConfigurationDetails",) . toJSON) _applicationInsightsApplicationComponentConfigurationConfigurationDetails
+    , fmap (("SubComponentTypeConfigurations",) . toJSON) _applicationInsightsApplicationComponentConfigurationSubComponentTypeConfigurations
+    ]
+
+-- | Constructor for 'ApplicationInsightsApplicationComponentConfiguration'
+-- containing required fields as arguments.
+applicationInsightsApplicationComponentConfiguration
+  :: ApplicationInsightsApplicationComponentConfiguration
+applicationInsightsApplicationComponentConfiguration  =
+  ApplicationInsightsApplicationComponentConfiguration
+  { _applicationInsightsApplicationComponentConfigurationConfigurationDetails = Nothing
+  , _applicationInsightsApplicationComponentConfigurationSubComponentTypeConfigurations = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentconfiguration.html#cfn-applicationinsights-application-componentconfiguration-configurationdetails
+aiaccConfigurationDetails :: Lens' ApplicationInsightsApplicationComponentConfiguration (Maybe ApplicationInsightsApplicationConfigurationDetails)
+aiaccConfigurationDetails = lens _applicationInsightsApplicationComponentConfigurationConfigurationDetails (\s a -> s { _applicationInsightsApplicationComponentConfigurationConfigurationDetails = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentconfiguration.html#cfn-applicationinsights-application-componentconfiguration-subcomponenttypeconfigurations
+aiaccSubComponentTypeConfigurations :: Lens' ApplicationInsightsApplicationComponentConfiguration (Maybe [ApplicationInsightsApplicationSubComponentTypeConfiguration])
+aiaccSubComponentTypeConfigurations = lens _applicationInsightsApplicationComponentConfigurationSubComponentTypeConfigurations (\s a -> s { _applicationInsightsApplicationComponentConfigurationSubComponentTypeConfigurations = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationComponentMonitoringSetting.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationComponentMonitoringSetting.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationComponentMonitoringSetting.hs
@@ -0,0 +1,76 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationComponentMonitoringSetting where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationComponentConfiguration
+
+-- | Full data type definition for
+-- ApplicationInsightsApplicationComponentMonitoringSetting. See
+-- 'applicationInsightsApplicationComponentMonitoringSetting' for a more
+-- convenient constructor.
+data ApplicationInsightsApplicationComponentMonitoringSetting =
+  ApplicationInsightsApplicationComponentMonitoringSetting
+  { _applicationInsightsApplicationComponentMonitoringSettingComponentARN :: Maybe (Val Text)
+  , _applicationInsightsApplicationComponentMonitoringSettingComponentConfigurationMode :: Maybe (Val Text)
+  , _applicationInsightsApplicationComponentMonitoringSettingComponentName :: Maybe (Val Text)
+  , _applicationInsightsApplicationComponentMonitoringSettingCustomComponentConfiguration :: Maybe ApplicationInsightsApplicationComponentConfiguration
+  , _applicationInsightsApplicationComponentMonitoringSettingDefaultOverwriteComponentConfiguration :: Maybe ApplicationInsightsApplicationComponentConfiguration
+  , _applicationInsightsApplicationComponentMonitoringSettingTier :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationComponentMonitoringSetting where
+  toJSON ApplicationInsightsApplicationComponentMonitoringSetting{..} =
+    object $
+    catMaybes
+    [ fmap (("ComponentARN",) . toJSON) _applicationInsightsApplicationComponentMonitoringSettingComponentARN
+    , fmap (("ComponentConfigurationMode",) . toJSON) _applicationInsightsApplicationComponentMonitoringSettingComponentConfigurationMode
+    , fmap (("ComponentName",) . toJSON) _applicationInsightsApplicationComponentMonitoringSettingComponentName
+    , fmap (("CustomComponentConfiguration",) . toJSON) _applicationInsightsApplicationComponentMonitoringSettingCustomComponentConfiguration
+    , fmap (("DefaultOverwriteComponentConfiguration",) . toJSON) _applicationInsightsApplicationComponentMonitoringSettingDefaultOverwriteComponentConfiguration
+    , fmap (("Tier",) . toJSON) _applicationInsightsApplicationComponentMonitoringSettingTier
+    ]
+
+-- | Constructor for
+-- 'ApplicationInsightsApplicationComponentMonitoringSetting' containing
+-- required fields as arguments.
+applicationInsightsApplicationComponentMonitoringSetting
+  :: ApplicationInsightsApplicationComponentMonitoringSetting
+applicationInsightsApplicationComponentMonitoringSetting  =
+  ApplicationInsightsApplicationComponentMonitoringSetting
+  { _applicationInsightsApplicationComponentMonitoringSettingComponentARN = Nothing
+  , _applicationInsightsApplicationComponentMonitoringSettingComponentConfigurationMode = Nothing
+  , _applicationInsightsApplicationComponentMonitoringSettingComponentName = Nothing
+  , _applicationInsightsApplicationComponentMonitoringSettingCustomComponentConfiguration = Nothing
+  , _applicationInsightsApplicationComponentMonitoringSettingDefaultOverwriteComponentConfiguration = Nothing
+  , _applicationInsightsApplicationComponentMonitoringSettingTier = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-componentarn
+aiacmsComponentARN :: Lens' ApplicationInsightsApplicationComponentMonitoringSetting (Maybe (Val Text))
+aiacmsComponentARN = lens _applicationInsightsApplicationComponentMonitoringSettingComponentARN (\s a -> s { _applicationInsightsApplicationComponentMonitoringSettingComponentARN = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-componentconfigurationmode
+aiacmsComponentConfigurationMode :: Lens' ApplicationInsightsApplicationComponentMonitoringSetting (Maybe (Val Text))
+aiacmsComponentConfigurationMode = lens _applicationInsightsApplicationComponentMonitoringSettingComponentConfigurationMode (\s a -> s { _applicationInsightsApplicationComponentMonitoringSettingComponentConfigurationMode = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-componentname
+aiacmsComponentName :: Lens' ApplicationInsightsApplicationComponentMonitoringSetting (Maybe (Val Text))
+aiacmsComponentName = lens _applicationInsightsApplicationComponentMonitoringSettingComponentName (\s a -> s { _applicationInsightsApplicationComponentMonitoringSettingComponentName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-customcomponentconfiguration
+aiacmsCustomComponentConfiguration :: Lens' ApplicationInsightsApplicationComponentMonitoringSetting (Maybe ApplicationInsightsApplicationComponentConfiguration)
+aiacmsCustomComponentConfiguration = lens _applicationInsightsApplicationComponentMonitoringSettingCustomComponentConfiguration (\s a -> s { _applicationInsightsApplicationComponentMonitoringSettingCustomComponentConfiguration = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-defaultoverwritecomponentconfiguration
+aiacmsDefaultOverwriteComponentConfiguration :: Lens' ApplicationInsightsApplicationComponentMonitoringSetting (Maybe ApplicationInsightsApplicationComponentConfiguration)
+aiacmsDefaultOverwriteComponentConfiguration = lens _applicationInsightsApplicationComponentMonitoringSettingDefaultOverwriteComponentConfiguration (\s a -> s { _applicationInsightsApplicationComponentMonitoringSettingDefaultOverwriteComponentConfiguration = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-componentmonitoringsetting.html#cfn-applicationinsights-application-componentmonitoringsetting-tier
+aiacmsTier :: Lens' ApplicationInsightsApplicationComponentMonitoringSetting (Maybe (Val Text))
+aiacmsTier = lens _applicationInsightsApplicationComponentMonitoringSettingTier (\s a -> s { _applicationInsightsApplicationComponentMonitoringSettingTier = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationConfigurationDetails.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationConfigurationDetails.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationConfigurationDetails.hs
@@ -0,0 +1,64 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationConfigurationDetails where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationAlarmMetric
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationAlarm
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationLog
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationWindowsEvent
+
+-- | Full data type definition for
+-- ApplicationInsightsApplicationConfigurationDetails. See
+-- 'applicationInsightsApplicationConfigurationDetails' for a more
+-- convenient constructor.
+data ApplicationInsightsApplicationConfigurationDetails =
+  ApplicationInsightsApplicationConfigurationDetails
+  { _applicationInsightsApplicationConfigurationDetailsAlarmMetrics :: Maybe [ApplicationInsightsApplicationAlarmMetric]
+  , _applicationInsightsApplicationConfigurationDetailsAlarms :: Maybe [ApplicationInsightsApplicationAlarm]
+  , _applicationInsightsApplicationConfigurationDetailsLogs :: Maybe [ApplicationInsightsApplicationLog]
+  , _applicationInsightsApplicationConfigurationDetailsWindowsEvents :: Maybe [ApplicationInsightsApplicationWindowsEvent]
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationConfigurationDetails where
+  toJSON ApplicationInsightsApplicationConfigurationDetails{..} =
+    object $
+    catMaybes
+    [ fmap (("AlarmMetrics",) . toJSON) _applicationInsightsApplicationConfigurationDetailsAlarmMetrics
+    , fmap (("Alarms",) . toJSON) _applicationInsightsApplicationConfigurationDetailsAlarms
+    , fmap (("Logs",) . toJSON) _applicationInsightsApplicationConfigurationDetailsLogs
+    , fmap (("WindowsEvents",) . toJSON) _applicationInsightsApplicationConfigurationDetailsWindowsEvents
+    ]
+
+-- | Constructor for 'ApplicationInsightsApplicationConfigurationDetails'
+-- containing required fields as arguments.
+applicationInsightsApplicationConfigurationDetails
+  :: ApplicationInsightsApplicationConfigurationDetails
+applicationInsightsApplicationConfigurationDetails  =
+  ApplicationInsightsApplicationConfigurationDetails
+  { _applicationInsightsApplicationConfigurationDetailsAlarmMetrics = Nothing
+  , _applicationInsightsApplicationConfigurationDetailsAlarms = Nothing
+  , _applicationInsightsApplicationConfigurationDetailsLogs = Nothing
+  , _applicationInsightsApplicationConfigurationDetailsWindowsEvents = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html#cfn-applicationinsights-application-configurationdetails-alarmmetrics
+aiacdAlarmMetrics :: Lens' ApplicationInsightsApplicationConfigurationDetails (Maybe [ApplicationInsightsApplicationAlarmMetric])
+aiacdAlarmMetrics = lens _applicationInsightsApplicationConfigurationDetailsAlarmMetrics (\s a -> s { _applicationInsightsApplicationConfigurationDetailsAlarmMetrics = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html#cfn-applicationinsights-application-configurationdetails-alarms
+aiacdAlarms :: Lens' ApplicationInsightsApplicationConfigurationDetails (Maybe [ApplicationInsightsApplicationAlarm])
+aiacdAlarms = lens _applicationInsightsApplicationConfigurationDetailsAlarms (\s a -> s { _applicationInsightsApplicationConfigurationDetailsAlarms = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html#cfn-applicationinsights-application-configurationdetails-logs
+aiacdLogs :: Lens' ApplicationInsightsApplicationConfigurationDetails (Maybe [ApplicationInsightsApplicationLog])
+aiacdLogs = lens _applicationInsightsApplicationConfigurationDetailsLogs (\s a -> s { _applicationInsightsApplicationConfigurationDetailsLogs = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-configurationdetails.html#cfn-applicationinsights-application-configurationdetails-windowsevents
+aiacdWindowsEvents :: Lens' ApplicationInsightsApplicationConfigurationDetails (Maybe [ApplicationInsightsApplicationWindowsEvent])
+aiacdWindowsEvents = lens _applicationInsightsApplicationConfigurationDetailsWindowsEvents (\s a -> s { _applicationInsightsApplicationConfigurationDetailsWindowsEvents = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationCustomComponent.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationCustomComponent.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationCustomComponent.hs
@@ -0,0 +1,49 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-customcomponent.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationCustomComponent where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- ApplicationInsightsApplicationCustomComponent. See
+-- 'applicationInsightsApplicationCustomComponent' for a more convenient
+-- constructor.
+data ApplicationInsightsApplicationCustomComponent =
+  ApplicationInsightsApplicationCustomComponent
+  { _applicationInsightsApplicationCustomComponentComponentName :: Val Text
+  , _applicationInsightsApplicationCustomComponentResourceList :: ValList Text
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationCustomComponent where
+  toJSON ApplicationInsightsApplicationCustomComponent{..} =
+    object $
+    catMaybes
+    [ (Just . ("ComponentName",) . toJSON) _applicationInsightsApplicationCustomComponentComponentName
+    , (Just . ("ResourceList",) . toJSON) _applicationInsightsApplicationCustomComponentResourceList
+    ]
+
+-- | Constructor for 'ApplicationInsightsApplicationCustomComponent'
+-- containing required fields as arguments.
+applicationInsightsApplicationCustomComponent
+  :: Val Text -- ^ 'aiaccComponentName'
+  -> ValList Text -- ^ 'aiaccResourceList'
+  -> ApplicationInsightsApplicationCustomComponent
+applicationInsightsApplicationCustomComponent componentNamearg resourceListarg =
+  ApplicationInsightsApplicationCustomComponent
+  { _applicationInsightsApplicationCustomComponentComponentName = componentNamearg
+  , _applicationInsightsApplicationCustomComponentResourceList = resourceListarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-customcomponent.html#cfn-applicationinsights-application-customcomponent-componentname
+aiaccComponentName :: Lens' ApplicationInsightsApplicationCustomComponent (Val Text)
+aiaccComponentName = lens _applicationInsightsApplicationCustomComponentComponentName (\s a -> s { _applicationInsightsApplicationCustomComponentComponentName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-customcomponent.html#cfn-applicationinsights-application-customcomponent-resourcelist
+aiaccResourceList :: Lens' ApplicationInsightsApplicationCustomComponent (ValList Text)
+aiaccResourceList = lens _applicationInsightsApplicationCustomComponentResourceList (\s a -> s { _applicationInsightsApplicationCustomComponentResourceList = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationLog.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationLog.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationLog.hs
@@ -0,0 +1,67 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationLog where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ApplicationInsightsApplicationLog. See
+-- 'applicationInsightsApplicationLog' for a more convenient constructor.
+data ApplicationInsightsApplicationLog =
+  ApplicationInsightsApplicationLog
+  { _applicationInsightsApplicationLogEncoding :: Maybe (Val Text)
+  , _applicationInsightsApplicationLogLogGroupName :: Maybe (Val Text)
+  , _applicationInsightsApplicationLogLogPath :: Maybe (Val Text)
+  , _applicationInsightsApplicationLogLogType :: Val Text
+  , _applicationInsightsApplicationLogPatternSet :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationLog where
+  toJSON ApplicationInsightsApplicationLog{..} =
+    object $
+    catMaybes
+    [ fmap (("Encoding",) . toJSON) _applicationInsightsApplicationLogEncoding
+    , fmap (("LogGroupName",) . toJSON) _applicationInsightsApplicationLogLogGroupName
+    , fmap (("LogPath",) . toJSON) _applicationInsightsApplicationLogLogPath
+    , (Just . ("LogType",) . toJSON) _applicationInsightsApplicationLogLogType
+    , fmap (("PatternSet",) . toJSON) _applicationInsightsApplicationLogPatternSet
+    ]
+
+-- | Constructor for 'ApplicationInsightsApplicationLog' containing required
+-- fields as arguments.
+applicationInsightsApplicationLog
+  :: Val Text -- ^ 'aialLogType'
+  -> ApplicationInsightsApplicationLog
+applicationInsightsApplicationLog logTypearg =
+  ApplicationInsightsApplicationLog
+  { _applicationInsightsApplicationLogEncoding = Nothing
+  , _applicationInsightsApplicationLogLogGroupName = Nothing
+  , _applicationInsightsApplicationLogLogPath = Nothing
+  , _applicationInsightsApplicationLogLogType = logTypearg
+  , _applicationInsightsApplicationLogPatternSet = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html#cfn-applicationinsights-application-log-encoding
+aialEncoding :: Lens' ApplicationInsightsApplicationLog (Maybe (Val Text))
+aialEncoding = lens _applicationInsightsApplicationLogEncoding (\s a -> s { _applicationInsightsApplicationLogEncoding = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html#cfn-applicationinsights-application-log-loggroupname
+aialLogGroupName :: Lens' ApplicationInsightsApplicationLog (Maybe (Val Text))
+aialLogGroupName = lens _applicationInsightsApplicationLogLogGroupName (\s a -> s { _applicationInsightsApplicationLogLogGroupName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html#cfn-applicationinsights-application-log-logpath
+aialLogPath :: Lens' ApplicationInsightsApplicationLog (Maybe (Val Text))
+aialLogPath = lens _applicationInsightsApplicationLogLogPath (\s a -> s { _applicationInsightsApplicationLogLogPath = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html#cfn-applicationinsights-application-log-logtype
+aialLogType :: Lens' ApplicationInsightsApplicationLog (Val Text)
+aialLogType = lens _applicationInsightsApplicationLogLogType (\s a -> s { _applicationInsightsApplicationLogLogType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-log.html#cfn-applicationinsights-application-log-patternset
+aialPatternSet :: Lens' ApplicationInsightsApplicationLog (Maybe (Val Text))
+aialPatternSet = lens _applicationInsightsApplicationLogPatternSet (\s a -> s { _applicationInsightsApplicationLogPatternSet = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationLogPattern.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationLogPattern.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationLogPattern.hs
@@ -0,0 +1,56 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpattern.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationLogPattern where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ApplicationInsightsApplicationLogPattern.
+-- See 'applicationInsightsApplicationLogPattern' for a more convenient
+-- constructor.
+data ApplicationInsightsApplicationLogPattern =
+  ApplicationInsightsApplicationLogPattern
+  { _applicationInsightsApplicationLogPatternPattern :: Val Text
+  , _applicationInsightsApplicationLogPatternPatternName :: Val Text
+  , _applicationInsightsApplicationLogPatternRank :: Val Integer
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationLogPattern where
+  toJSON ApplicationInsightsApplicationLogPattern{..} =
+    object $
+    catMaybes
+    [ (Just . ("Pattern",) . toJSON) _applicationInsightsApplicationLogPatternPattern
+    , (Just . ("PatternName",) . toJSON) _applicationInsightsApplicationLogPatternPatternName
+    , (Just . ("Rank",) . toJSON) _applicationInsightsApplicationLogPatternRank
+    ]
+
+-- | Constructor for 'ApplicationInsightsApplicationLogPattern' containing
+-- required fields as arguments.
+applicationInsightsApplicationLogPattern
+  :: Val Text -- ^ 'aialpPattern'
+  -> Val Text -- ^ 'aialpPatternName'
+  -> Val Integer -- ^ 'aialpRank'
+  -> ApplicationInsightsApplicationLogPattern
+applicationInsightsApplicationLogPattern patternarg patternNamearg rankarg =
+  ApplicationInsightsApplicationLogPattern
+  { _applicationInsightsApplicationLogPatternPattern = patternarg
+  , _applicationInsightsApplicationLogPatternPatternName = patternNamearg
+  , _applicationInsightsApplicationLogPatternRank = rankarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpattern.html#cfn-applicationinsights-application-logpattern-pattern
+aialpPattern :: Lens' ApplicationInsightsApplicationLogPattern (Val Text)
+aialpPattern = lens _applicationInsightsApplicationLogPatternPattern (\s a -> s { _applicationInsightsApplicationLogPatternPattern = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpattern.html#cfn-applicationinsights-application-logpattern-patternname
+aialpPatternName :: Lens' ApplicationInsightsApplicationLogPattern (Val Text)
+aialpPatternName = lens _applicationInsightsApplicationLogPatternPatternName (\s a -> s { _applicationInsightsApplicationLogPatternPatternName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpattern.html#cfn-applicationinsights-application-logpattern-rank
+aialpRank :: Lens' ApplicationInsightsApplicationLogPattern (Val Integer)
+aialpRank = lens _applicationInsightsApplicationLogPatternRank (\s a -> s { _applicationInsightsApplicationLogPatternRank = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationLogPatternSet.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationLogPatternSet.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationLogPatternSet.hs
@@ -0,0 +1,49 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpatternset.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationLogPatternSet where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationLogPattern
+
+-- | Full data type definition for
+-- ApplicationInsightsApplicationLogPatternSet. See
+-- 'applicationInsightsApplicationLogPatternSet' for a more convenient
+-- constructor.
+data ApplicationInsightsApplicationLogPatternSet =
+  ApplicationInsightsApplicationLogPatternSet
+  { _applicationInsightsApplicationLogPatternSetLogPatterns :: [ApplicationInsightsApplicationLogPattern]
+  , _applicationInsightsApplicationLogPatternSetPatternSetName :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationLogPatternSet where
+  toJSON ApplicationInsightsApplicationLogPatternSet{..} =
+    object $
+    catMaybes
+    [ (Just . ("LogPatterns",) . toJSON) _applicationInsightsApplicationLogPatternSetLogPatterns
+    , (Just . ("PatternSetName",) . toJSON) _applicationInsightsApplicationLogPatternSetPatternSetName
+    ]
+
+-- | Constructor for 'ApplicationInsightsApplicationLogPatternSet' containing
+-- required fields as arguments.
+applicationInsightsApplicationLogPatternSet
+  :: [ApplicationInsightsApplicationLogPattern] -- ^ 'aialpsLogPatterns'
+  -> Val Text -- ^ 'aialpsPatternSetName'
+  -> ApplicationInsightsApplicationLogPatternSet
+applicationInsightsApplicationLogPatternSet logPatternsarg patternSetNamearg =
+  ApplicationInsightsApplicationLogPatternSet
+  { _applicationInsightsApplicationLogPatternSetLogPatterns = logPatternsarg
+  , _applicationInsightsApplicationLogPatternSetPatternSetName = patternSetNamearg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpatternset.html#cfn-applicationinsights-application-logpatternset-logpatterns
+aialpsLogPatterns :: Lens' ApplicationInsightsApplicationLogPatternSet [ApplicationInsightsApplicationLogPattern]
+aialpsLogPatterns = lens _applicationInsightsApplicationLogPatternSetLogPatterns (\s a -> s { _applicationInsightsApplicationLogPatternSetLogPatterns = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-logpatternset.html#cfn-applicationinsights-application-logpatternset-patternsetname
+aialpsPatternSetName :: Lens' ApplicationInsightsApplicationLogPatternSet (Val Text)
+aialpsPatternSetName = lens _applicationInsightsApplicationLogPatternSetPatternSetName (\s a -> s { _applicationInsightsApplicationLogPatternSetPatternSetName = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationSubComponentConfigurationDetails.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationSubComponentConfigurationDetails.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationSubComponentConfigurationDetails.hs
@@ -0,0 +1,57 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponentconfigurationdetails.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationSubComponentConfigurationDetails where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationAlarmMetric
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationLog
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationWindowsEvent
+
+-- | Full data type definition for
+-- ApplicationInsightsApplicationSubComponentConfigurationDetails. See
+-- 'applicationInsightsApplicationSubComponentConfigurationDetails' for a
+-- more convenient constructor.
+data ApplicationInsightsApplicationSubComponentConfigurationDetails =
+  ApplicationInsightsApplicationSubComponentConfigurationDetails
+  { _applicationInsightsApplicationSubComponentConfigurationDetailsAlarmMetrics :: Maybe [ApplicationInsightsApplicationAlarmMetric]
+  , _applicationInsightsApplicationSubComponentConfigurationDetailsLogs :: Maybe [ApplicationInsightsApplicationLog]
+  , _applicationInsightsApplicationSubComponentConfigurationDetailsWindowsEvents :: Maybe [ApplicationInsightsApplicationWindowsEvent]
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationSubComponentConfigurationDetails where
+  toJSON ApplicationInsightsApplicationSubComponentConfigurationDetails{..} =
+    object $
+    catMaybes
+    [ fmap (("AlarmMetrics",) . toJSON) _applicationInsightsApplicationSubComponentConfigurationDetailsAlarmMetrics
+    , fmap (("Logs",) . toJSON) _applicationInsightsApplicationSubComponentConfigurationDetailsLogs
+    , fmap (("WindowsEvents",) . toJSON) _applicationInsightsApplicationSubComponentConfigurationDetailsWindowsEvents
+    ]
+
+-- | Constructor for
+-- 'ApplicationInsightsApplicationSubComponentConfigurationDetails'
+-- containing required fields as arguments.
+applicationInsightsApplicationSubComponentConfigurationDetails
+  :: ApplicationInsightsApplicationSubComponentConfigurationDetails
+applicationInsightsApplicationSubComponentConfigurationDetails  =
+  ApplicationInsightsApplicationSubComponentConfigurationDetails
+  { _applicationInsightsApplicationSubComponentConfigurationDetailsAlarmMetrics = Nothing
+  , _applicationInsightsApplicationSubComponentConfigurationDetailsLogs = Nothing
+  , _applicationInsightsApplicationSubComponentConfigurationDetailsWindowsEvents = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponentconfigurationdetails.html#cfn-applicationinsights-application-subcomponentconfigurationdetails-alarmmetrics
+aiasccdAlarmMetrics :: Lens' ApplicationInsightsApplicationSubComponentConfigurationDetails (Maybe [ApplicationInsightsApplicationAlarmMetric])
+aiasccdAlarmMetrics = lens _applicationInsightsApplicationSubComponentConfigurationDetailsAlarmMetrics (\s a -> s { _applicationInsightsApplicationSubComponentConfigurationDetailsAlarmMetrics = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponentconfigurationdetails.html#cfn-applicationinsights-application-subcomponentconfigurationdetails-logs
+aiasccdLogs :: Lens' ApplicationInsightsApplicationSubComponentConfigurationDetails (Maybe [ApplicationInsightsApplicationLog])
+aiasccdLogs = lens _applicationInsightsApplicationSubComponentConfigurationDetailsLogs (\s a -> s { _applicationInsightsApplicationSubComponentConfigurationDetailsLogs = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponentconfigurationdetails.html#cfn-applicationinsights-application-subcomponentconfigurationdetails-windowsevents
+aiasccdWindowsEvents :: Lens' ApplicationInsightsApplicationSubComponentConfigurationDetails (Maybe [ApplicationInsightsApplicationWindowsEvent])
+aiasccdWindowsEvents = lens _applicationInsightsApplicationSubComponentConfigurationDetailsWindowsEvents (\s a -> s { _applicationInsightsApplicationSubComponentConfigurationDetailsWindowsEvents = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationSubComponentTypeConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationSubComponentTypeConfiguration.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationSubComponentTypeConfiguration.hs
@@ -0,0 +1,50 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponenttypeconfiguration.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationSubComponentTypeConfiguration where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationSubComponentConfigurationDetails
+
+-- | Full data type definition for
+-- ApplicationInsightsApplicationSubComponentTypeConfiguration. See
+-- 'applicationInsightsApplicationSubComponentTypeConfiguration' for a more
+-- convenient constructor.
+data ApplicationInsightsApplicationSubComponentTypeConfiguration =
+  ApplicationInsightsApplicationSubComponentTypeConfiguration
+  { _applicationInsightsApplicationSubComponentTypeConfigurationSubComponentConfigurationDetails :: ApplicationInsightsApplicationSubComponentConfigurationDetails
+  , _applicationInsightsApplicationSubComponentTypeConfigurationSubComponentType :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationSubComponentTypeConfiguration where
+  toJSON ApplicationInsightsApplicationSubComponentTypeConfiguration{..} =
+    object $
+    catMaybes
+    [ (Just . ("SubComponentConfigurationDetails",) . toJSON) _applicationInsightsApplicationSubComponentTypeConfigurationSubComponentConfigurationDetails
+    , (Just . ("SubComponentType",) . toJSON) _applicationInsightsApplicationSubComponentTypeConfigurationSubComponentType
+    ]
+
+-- | Constructor for
+-- 'ApplicationInsightsApplicationSubComponentTypeConfiguration' containing
+-- required fields as arguments.
+applicationInsightsApplicationSubComponentTypeConfiguration
+  :: ApplicationInsightsApplicationSubComponentConfigurationDetails -- ^ 'aiasctcSubComponentConfigurationDetails'
+  -> Val Text -- ^ 'aiasctcSubComponentType'
+  -> ApplicationInsightsApplicationSubComponentTypeConfiguration
+applicationInsightsApplicationSubComponentTypeConfiguration subComponentConfigurationDetailsarg subComponentTypearg =
+  ApplicationInsightsApplicationSubComponentTypeConfiguration
+  { _applicationInsightsApplicationSubComponentTypeConfigurationSubComponentConfigurationDetails = subComponentConfigurationDetailsarg
+  , _applicationInsightsApplicationSubComponentTypeConfigurationSubComponentType = subComponentTypearg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponenttypeconfiguration.html#cfn-applicationinsights-application-subcomponenttypeconfiguration-subcomponentconfigurationdetails
+aiasctcSubComponentConfigurationDetails :: Lens' ApplicationInsightsApplicationSubComponentTypeConfiguration ApplicationInsightsApplicationSubComponentConfigurationDetails
+aiasctcSubComponentConfigurationDetails = lens _applicationInsightsApplicationSubComponentTypeConfigurationSubComponentConfigurationDetails (\s a -> s { _applicationInsightsApplicationSubComponentTypeConfigurationSubComponentConfigurationDetails = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-subcomponenttypeconfiguration.html#cfn-applicationinsights-application-subcomponenttypeconfiguration-subcomponenttype
+aiasctcSubComponentType :: Lens' ApplicationInsightsApplicationSubComponentTypeConfiguration (Val Text)
+aiasctcSubComponentType = lens _applicationInsightsApplicationSubComponentTypeConfigurationSubComponentType (\s a -> s { _applicationInsightsApplicationSubComponentTypeConfigurationSubComponentType = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationWindowsEvent.hs b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationWindowsEvent.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ApplicationInsightsApplicationWindowsEvent.hs
@@ -0,0 +1,63 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-windowsevent.html
+
+module Stratosphere.ResourceProperties.ApplicationInsightsApplicationWindowsEvent where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ApplicationInsightsApplicationWindowsEvent.
+-- See 'applicationInsightsApplicationWindowsEvent' for a more convenient
+-- constructor.
+data ApplicationInsightsApplicationWindowsEvent =
+  ApplicationInsightsApplicationWindowsEvent
+  { _applicationInsightsApplicationWindowsEventEventLevels :: ValList Text
+  , _applicationInsightsApplicationWindowsEventEventName :: Val Text
+  , _applicationInsightsApplicationWindowsEventLogGroupName :: Val Text
+  , _applicationInsightsApplicationWindowsEventPatternSet :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON ApplicationInsightsApplicationWindowsEvent where
+  toJSON ApplicationInsightsApplicationWindowsEvent{..} =
+    object $
+    catMaybes
+    [ (Just . ("EventLevels",) . toJSON) _applicationInsightsApplicationWindowsEventEventLevels
+    , (Just . ("EventName",) . toJSON) _applicationInsightsApplicationWindowsEventEventName
+    , (Just . ("LogGroupName",) . toJSON) _applicationInsightsApplicationWindowsEventLogGroupName
+    , fmap (("PatternSet",) . toJSON) _applicationInsightsApplicationWindowsEventPatternSet
+    ]
+
+-- | Constructor for 'ApplicationInsightsApplicationWindowsEvent' containing
+-- required fields as arguments.
+applicationInsightsApplicationWindowsEvent
+  :: ValList Text -- ^ 'aiaweEventLevels'
+  -> Val Text -- ^ 'aiaweEventName'
+  -> Val Text -- ^ 'aiaweLogGroupName'
+  -> ApplicationInsightsApplicationWindowsEvent
+applicationInsightsApplicationWindowsEvent eventLevelsarg eventNamearg logGroupNamearg =
+  ApplicationInsightsApplicationWindowsEvent
+  { _applicationInsightsApplicationWindowsEventEventLevels = eventLevelsarg
+  , _applicationInsightsApplicationWindowsEventEventName = eventNamearg
+  , _applicationInsightsApplicationWindowsEventLogGroupName = logGroupNamearg
+  , _applicationInsightsApplicationWindowsEventPatternSet = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-windowsevent.html#cfn-applicationinsights-application-windowsevent-eventlevels
+aiaweEventLevels :: Lens' ApplicationInsightsApplicationWindowsEvent (ValList Text)
+aiaweEventLevels = lens _applicationInsightsApplicationWindowsEventEventLevels (\s a -> s { _applicationInsightsApplicationWindowsEventEventLevels = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-windowsevent.html#cfn-applicationinsights-application-windowsevent-eventname
+aiaweEventName :: Lens' ApplicationInsightsApplicationWindowsEvent (Val Text)
+aiaweEventName = lens _applicationInsightsApplicationWindowsEventEventName (\s a -> s { _applicationInsightsApplicationWindowsEventEventName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-windowsevent.html#cfn-applicationinsights-application-windowsevent-loggroupname
+aiaweLogGroupName :: Lens' ApplicationInsightsApplicationWindowsEvent (Val Text)
+aiaweLogGroupName = lens _applicationInsightsApplicationWindowsEventLogGroupName (\s a -> s { _applicationInsightsApplicationWindowsEventLogGroupName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationinsights-application-windowsevent.html#cfn-applicationinsights-application-windowsevent-patternset
+aiawePatternSet :: Lens' ApplicationInsightsApplicationWindowsEvent (Maybe (Val Text))
+aiawePatternSet = lens _applicationInsightsApplicationWindowsEventPatternSet (\s a -> s { _applicationInsightsApplicationWindowsEventPatternSet = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/CodeCommitRepositoryCode.hs b/library-gen/Stratosphere/ResourceProperties/CodeCommitRepositoryCode.hs
--- a/library-gen/Stratosphere/ResourceProperties/CodeCommitRepositoryCode.hs
+++ b/library-gen/Stratosphere/ResourceProperties/CodeCommitRepositoryCode.hs
@@ -14,14 +14,16 @@
 -- 'codeCommitRepositoryCode' for a more convenient constructor.
 data CodeCommitRepositoryCode =
   CodeCommitRepositoryCode
-  { _codeCommitRepositoryCodeS3 :: CodeCommitRepositoryS3
+  { _codeCommitRepositoryCodeBranchName :: Maybe (Val Text)
+  , _codeCommitRepositoryCodeS3 :: CodeCommitRepositoryS3
   } deriving (Show, Eq)
 
 instance ToJSON CodeCommitRepositoryCode where
   toJSON CodeCommitRepositoryCode{..} =
     object $
     catMaybes
-    [ (Just . ("S3",) . toJSON) _codeCommitRepositoryCodeS3
+    [ fmap (("BranchName",) . toJSON) _codeCommitRepositoryCodeBranchName
+    , (Just . ("S3",) . toJSON) _codeCommitRepositoryCodeS3
     ]
 
 -- | Constructor for 'CodeCommitRepositoryCode' containing required fields as
@@ -31,8 +33,13 @@
   -> CodeCommitRepositoryCode
 codeCommitRepositoryCode s3arg =
   CodeCommitRepositoryCode
-  { _codeCommitRepositoryCodeS3 = s3arg
+  { _codeCommitRepositoryCodeBranchName = Nothing
+  , _codeCommitRepositoryCodeS3 = s3arg
   }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html#cfn-codecommit-repository-code-branchname
+ccrcBranchName :: Lens' CodeCommitRepositoryCode (Maybe (Val Text))
+ccrcBranchName = lens _codeCommitRepositoryCodeBranchName (\s a -> s { _codeCommitRepositoryCodeBranchName = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html#cfn-codecommit-repository-code-s3
 ccrcS3 :: Lens' CodeCommitRepositoryCode CodeCommitRepositoryS3
diff --git a/library-gen/Stratosphere/ResourceProperties/EC2CarrierGatewayTags.hs b/library-gen/Stratosphere/ResourceProperties/EC2CarrierGatewayTags.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/EC2CarrierGatewayTags.hs
@@ -0,0 +1,38 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-carriergateway-tags.html
+
+module Stratosphere.ResourceProperties.EC2CarrierGatewayTags where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.Tag
+
+-- | Full data type definition for EC2CarrierGatewayTags. See
+-- 'ec2CarrierGatewayTags' for a more convenient constructor.
+data EC2CarrierGatewayTags =
+  EC2CarrierGatewayTags
+  { _eC2CarrierGatewayTagsTags :: Maybe [Tag]
+  } deriving (Show, Eq)
+
+instance ToJSON EC2CarrierGatewayTags where
+  toJSON EC2CarrierGatewayTags{..} =
+    object $
+    catMaybes
+    [ fmap (("Tags",) . toJSON) _eC2CarrierGatewayTagsTags
+    ]
+
+-- | Constructor for 'EC2CarrierGatewayTags' containing required fields as
+-- arguments.
+ec2CarrierGatewayTags
+  :: EC2CarrierGatewayTags
+ec2CarrierGatewayTags  =
+  EC2CarrierGatewayTags
+  { _eC2CarrierGatewayTagsTags = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-carriergateway-tags.html#cfn-ec2-carriergateway-tags-tags
+eccgtTags :: Lens' EC2CarrierGatewayTags (Maybe [Tag])
+eccgtTags = lens _eC2CarrierGatewayTagsTags (\s a -> s { _eC2CarrierGatewayTagsTags = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ECRRepositoryLifecyclePolicy.hs b/library-gen/Stratosphere/ResourceProperties/ECRRepositoryLifecyclePolicy.hs
deleted file mode 100644
--- a/library-gen/Stratosphere/ResourceProperties/ECRRepositoryLifecyclePolicy.hs
+++ /dev/null
@@ -1,45 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE RecordWildCards #-}
-{-# LANGUAGE StrictData #-}
-{-# LANGUAGE TupleSections #-}
-
--- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html
-
-module Stratosphere.ResourceProperties.ECRRepositoryLifecyclePolicy where
-
-import Stratosphere.ResourceImports
-
-
--- | Full data type definition for ECRRepositoryLifecyclePolicy. See
--- 'ecrRepositoryLifecyclePolicy' for a more convenient constructor.
-data ECRRepositoryLifecyclePolicy =
-  ECRRepositoryLifecyclePolicy
-  { _eCRRepositoryLifecyclePolicyLifecyclePolicyText :: Maybe (Val Text)
-  , _eCRRepositoryLifecyclePolicyRegistryId :: Maybe (Val Text)
-  } deriving (Show, Eq)
-
-instance ToJSON ECRRepositoryLifecyclePolicy where
-  toJSON ECRRepositoryLifecyclePolicy{..} =
-    object $
-    catMaybes
-    [ fmap (("LifecyclePolicyText",) . toJSON) _eCRRepositoryLifecyclePolicyLifecyclePolicyText
-    , fmap (("RegistryId",) . toJSON) _eCRRepositoryLifecyclePolicyRegistryId
-    ]
-
--- | Constructor for 'ECRRepositoryLifecyclePolicy' containing required fields
--- as arguments.
-ecrRepositoryLifecyclePolicy
-  :: ECRRepositoryLifecyclePolicy
-ecrRepositoryLifecyclePolicy  =
-  ECRRepositoryLifecyclePolicy
-  { _eCRRepositoryLifecyclePolicyLifecyclePolicyText = Nothing
-  , _eCRRepositoryLifecyclePolicyRegistryId = Nothing
-  }
-
--- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-lifecyclepolicytext
-ecrrlpLifecyclePolicyText :: Lens' ECRRepositoryLifecyclePolicy (Maybe (Val Text))
-ecrrlpLifecyclePolicyText = lens _eCRRepositoryLifecyclePolicyLifecyclePolicyText (\s a -> s { _eCRRepositoryLifecyclePolicyLifecyclePolicyText = a })
-
--- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecr-repository-lifecyclepolicy.html#cfn-ecr-repository-lifecyclepolicy-registryid
-ecrrlpRegistryId :: Lens' ECRRepositoryLifecyclePolicy (Maybe (Val Text))
-ecrrlpRegistryId = lens _eCRRepositoryLifecyclePolicyRegistryId (\s a -> s { _eCRRepositoryLifecyclePolicyRegistryId = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionAuthorizationConfig.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionAuthorizationConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionAuthorizationConfig.hs
@@ -0,0 +1,45 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-authorizationconfig.html
+
+module Stratosphere.ResourceProperties.ECSTaskDefinitionAuthorizationConfig where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ECSTaskDefinitionAuthorizationConfig. See
+-- 'ecsTaskDefinitionAuthorizationConfig' for a more convenient constructor.
+data ECSTaskDefinitionAuthorizationConfig =
+  ECSTaskDefinitionAuthorizationConfig
+  { _eCSTaskDefinitionAuthorizationConfigAccessPointId :: Maybe (Val Text)
+  , _eCSTaskDefinitionAuthorizationConfigIAM :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON ECSTaskDefinitionAuthorizationConfig where
+  toJSON ECSTaskDefinitionAuthorizationConfig{..} =
+    object $
+    catMaybes
+    [ fmap (("AccessPointId",) . toJSON) _eCSTaskDefinitionAuthorizationConfigAccessPointId
+    , fmap (("IAM",) . toJSON) _eCSTaskDefinitionAuthorizationConfigIAM
+    ]
+
+-- | Constructor for 'ECSTaskDefinitionAuthorizationConfig' containing
+-- required fields as arguments.
+ecsTaskDefinitionAuthorizationConfig
+  :: ECSTaskDefinitionAuthorizationConfig
+ecsTaskDefinitionAuthorizationConfig  =
+  ECSTaskDefinitionAuthorizationConfig
+  { _eCSTaskDefinitionAuthorizationConfigAccessPointId = Nothing
+  , _eCSTaskDefinitionAuthorizationConfigIAM = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-authorizationconfig.html#cfn-ecs-taskdefinition-authorizationconfig-accesspointid
+ecstdacAccessPointId :: Lens' ECSTaskDefinitionAuthorizationConfig (Maybe (Val Text))
+ecstdacAccessPointId = lens _eCSTaskDefinitionAuthorizationConfigAccessPointId (\s a -> s { _eCSTaskDefinitionAuthorizationConfigAccessPointId = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-authorizationconfig.html#cfn-ecs-taskdefinition-authorizationconfig-iam
+ecstdacIAM :: Lens' ECSTaskDefinitionAuthorizationConfig (Maybe (Val Text))
+ecstdacIAM = lens _eCSTaskDefinitionAuthorizationConfigIAM (\s a -> s { _eCSTaskDefinitionAuthorizationConfigIAM = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionContainerDefinition.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionContainerDefinition.hs
--- a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionContainerDefinition.hs
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionContainerDefinition.hs
@@ -10,6 +10,7 @@
 import Stratosphere.ResourceImports
 import Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDependency
 import Stratosphere.ResourceProperties.ECSTaskDefinitionKeyValuePair
+import Stratosphere.ResourceProperties.ECSTaskDefinitionEnvironmentFile
 import Stratosphere.ResourceProperties.ECSTaskDefinitionHostEntry
 import Stratosphere.ResourceProperties.ECSTaskDefinitionFirelensConfiguration
 import Stratosphere.ResourceProperties.ECSTaskDefinitionHealthCheck
@@ -38,6 +39,7 @@
   , _eCSTaskDefinitionContainerDefinitionDockerSecurityOptions :: Maybe (ValList Text)
   , _eCSTaskDefinitionContainerDefinitionEntryPoint :: Maybe (ValList Text)
   , _eCSTaskDefinitionContainerDefinitionEnvironment :: Maybe [ECSTaskDefinitionKeyValuePair]
+  , _eCSTaskDefinitionContainerDefinitionEnvironmentFiles :: Maybe [ECSTaskDefinitionEnvironmentFile]
   , _eCSTaskDefinitionContainerDefinitionEssential :: Maybe (Val Bool)
   , _eCSTaskDefinitionContainerDefinitionExtraHosts :: Maybe [ECSTaskDefinitionHostEntry]
   , _eCSTaskDefinitionContainerDefinitionFirelensConfiguration :: Maybe ECSTaskDefinitionFirelensConfiguration
@@ -82,6 +84,7 @@
     , fmap (("DockerSecurityOptions",) . toJSON) _eCSTaskDefinitionContainerDefinitionDockerSecurityOptions
     , fmap (("EntryPoint",) . toJSON) _eCSTaskDefinitionContainerDefinitionEntryPoint
     , fmap (("Environment",) . toJSON) _eCSTaskDefinitionContainerDefinitionEnvironment
+    , fmap (("EnvironmentFiles",) . toJSON) _eCSTaskDefinitionContainerDefinitionEnvironmentFiles
     , fmap (("Essential",) . toJSON) _eCSTaskDefinitionContainerDefinitionEssential
     , fmap (("ExtraHosts",) . toJSON) _eCSTaskDefinitionContainerDefinitionExtraHosts
     , fmap (("FirelensConfiguration",) . toJSON) _eCSTaskDefinitionContainerDefinitionFirelensConfiguration
@@ -130,6 +133,7 @@
   , _eCSTaskDefinitionContainerDefinitionDockerSecurityOptions = Nothing
   , _eCSTaskDefinitionContainerDefinitionEntryPoint = Nothing
   , _eCSTaskDefinitionContainerDefinitionEnvironment = Nothing
+  , _eCSTaskDefinitionContainerDefinitionEnvironmentFiles = Nothing
   , _eCSTaskDefinitionContainerDefinitionEssential = Nothing
   , _eCSTaskDefinitionContainerDefinitionExtraHosts = Nothing
   , _eCSTaskDefinitionContainerDefinitionFirelensConfiguration = Nothing
@@ -199,6 +203,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-environment
 ecstdcdEnvironment :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [ECSTaskDefinitionKeyValuePair])
 ecstdcdEnvironment = lens _eCSTaskDefinitionContainerDefinitionEnvironment (\s a -> s { _eCSTaskDefinitionContainerDefinitionEnvironment = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-environmentfiles
+ecstdcdEnvironmentFiles :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [ECSTaskDefinitionEnvironmentFile])
+ecstdcdEnvironmentFiles = lens _eCSTaskDefinitionContainerDefinitionEnvironmentFiles (\s a -> s { _eCSTaskDefinitionContainerDefinitionEnvironmentFiles = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-essential
 ecstdcdEssential :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Bool))
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionEFSVolumeConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionEFSVolumeConfiguration.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionEFSVolumeConfiguration.hs
@@ -0,0 +1,68 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html
+
+module Stratosphere.ResourceProperties.ECSTaskDefinitionEFSVolumeConfiguration where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ECSTaskDefinitionEFSVolumeConfiguration.
+-- See 'ecsTaskDefinitionEFSVolumeConfiguration' for a more convenient
+-- constructor.
+data ECSTaskDefinitionEFSVolumeConfiguration =
+  ECSTaskDefinitionEFSVolumeConfiguration
+  { _eCSTaskDefinitionEFSVolumeConfigurationAuthorizationConfig :: Maybe Object
+  , _eCSTaskDefinitionEFSVolumeConfigurationFilesystemId :: Val Text
+  , _eCSTaskDefinitionEFSVolumeConfigurationRootDirectory :: Maybe (Val Text)
+  , _eCSTaskDefinitionEFSVolumeConfigurationTransitEncryption :: Maybe (Val Text)
+  , _eCSTaskDefinitionEFSVolumeConfigurationTransitEncryptionPort :: Maybe (Val Integer)
+  } deriving (Show, Eq)
+
+instance ToJSON ECSTaskDefinitionEFSVolumeConfiguration where
+  toJSON ECSTaskDefinitionEFSVolumeConfiguration{..} =
+    object $
+    catMaybes
+    [ fmap (("AuthorizationConfig",) . toJSON) _eCSTaskDefinitionEFSVolumeConfigurationAuthorizationConfig
+    , (Just . ("FilesystemId",) . toJSON) _eCSTaskDefinitionEFSVolumeConfigurationFilesystemId
+    , fmap (("RootDirectory",) . toJSON) _eCSTaskDefinitionEFSVolumeConfigurationRootDirectory
+    , fmap (("TransitEncryption",) . toJSON) _eCSTaskDefinitionEFSVolumeConfigurationTransitEncryption
+    , fmap (("TransitEncryptionPort",) . toJSON) _eCSTaskDefinitionEFSVolumeConfigurationTransitEncryptionPort
+    ]
+
+-- | Constructor for 'ECSTaskDefinitionEFSVolumeConfiguration' containing
+-- required fields as arguments.
+ecsTaskDefinitionEFSVolumeConfiguration
+  :: Val Text -- ^ 'ecstdefsvcFilesystemId'
+  -> ECSTaskDefinitionEFSVolumeConfiguration
+ecsTaskDefinitionEFSVolumeConfiguration filesystemIdarg =
+  ECSTaskDefinitionEFSVolumeConfiguration
+  { _eCSTaskDefinitionEFSVolumeConfigurationAuthorizationConfig = Nothing
+  , _eCSTaskDefinitionEFSVolumeConfigurationFilesystemId = filesystemIdarg
+  , _eCSTaskDefinitionEFSVolumeConfigurationRootDirectory = Nothing
+  , _eCSTaskDefinitionEFSVolumeConfigurationTransitEncryption = Nothing
+  , _eCSTaskDefinitionEFSVolumeConfigurationTransitEncryptionPort = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html#cfn-ecs-taskdefinition-efsvolumeconfiguration-authorizationconfig
+ecstdefsvcAuthorizationConfig :: Lens' ECSTaskDefinitionEFSVolumeConfiguration (Maybe Object)
+ecstdefsvcAuthorizationConfig = lens _eCSTaskDefinitionEFSVolumeConfigurationAuthorizationConfig (\s a -> s { _eCSTaskDefinitionEFSVolumeConfigurationAuthorizationConfig = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html#cfn-ecs-taskdefinition-efsvolumeconfiguration-filesystemid
+ecstdefsvcFilesystemId :: Lens' ECSTaskDefinitionEFSVolumeConfiguration (Val Text)
+ecstdefsvcFilesystemId = lens _eCSTaskDefinitionEFSVolumeConfigurationFilesystemId (\s a -> s { _eCSTaskDefinitionEFSVolumeConfigurationFilesystemId = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html#cfn-ecs-taskdefinition-efsvolumeconfiguration-rootdirectory
+ecstdefsvcRootDirectory :: Lens' ECSTaskDefinitionEFSVolumeConfiguration (Maybe (Val Text))
+ecstdefsvcRootDirectory = lens _eCSTaskDefinitionEFSVolumeConfigurationRootDirectory (\s a -> s { _eCSTaskDefinitionEFSVolumeConfigurationRootDirectory = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html#cfn-ecs-taskdefinition-efsvolumeconfiguration-transitencryption
+ecstdefsvcTransitEncryption :: Lens' ECSTaskDefinitionEFSVolumeConfiguration (Maybe (Val Text))
+ecstdefsvcTransitEncryption = lens _eCSTaskDefinitionEFSVolumeConfigurationTransitEncryption (\s a -> s { _eCSTaskDefinitionEFSVolumeConfigurationTransitEncryption = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-efsvolumeconfiguration.html#cfn-ecs-taskdefinition-efsvolumeconfiguration-transitencryptionport
+ecstdefsvcTransitEncryptionPort :: Lens' ECSTaskDefinitionEFSVolumeConfiguration (Maybe (Val Integer))
+ecstdefsvcTransitEncryptionPort = lens _eCSTaskDefinitionEFSVolumeConfigurationTransitEncryptionPort (\s a -> s { _eCSTaskDefinitionEFSVolumeConfigurationTransitEncryptionPort = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionEnvironmentFile.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionEnvironmentFile.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionEnvironmentFile.hs
@@ -0,0 +1,45 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-environmentfile.html
+
+module Stratosphere.ResourceProperties.ECSTaskDefinitionEnvironmentFile where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for ECSTaskDefinitionEnvironmentFile. See
+-- 'ecsTaskDefinitionEnvironmentFile' for a more convenient constructor.
+data ECSTaskDefinitionEnvironmentFile =
+  ECSTaskDefinitionEnvironmentFile
+  { _eCSTaskDefinitionEnvironmentFileType :: Maybe (Val Text)
+  , _eCSTaskDefinitionEnvironmentFileValue :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON ECSTaskDefinitionEnvironmentFile where
+  toJSON ECSTaskDefinitionEnvironmentFile{..} =
+    object $
+    catMaybes
+    [ fmap (("Type",) . toJSON) _eCSTaskDefinitionEnvironmentFileType
+    , fmap (("Value",) . toJSON) _eCSTaskDefinitionEnvironmentFileValue
+    ]
+
+-- | Constructor for 'ECSTaskDefinitionEnvironmentFile' containing required
+-- fields as arguments.
+ecsTaskDefinitionEnvironmentFile
+  :: ECSTaskDefinitionEnvironmentFile
+ecsTaskDefinitionEnvironmentFile  =
+  ECSTaskDefinitionEnvironmentFile
+  { _eCSTaskDefinitionEnvironmentFileType = Nothing
+  , _eCSTaskDefinitionEnvironmentFileValue = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-environmentfile.html#cfn-ecs-taskdefinition-environmentfile-type
+ecstdefType :: Lens' ECSTaskDefinitionEnvironmentFile (Maybe (Val Text))
+ecstdefType = lens _eCSTaskDefinitionEnvironmentFileType (\s a -> s { _eCSTaskDefinitionEnvironmentFileType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-environmentfile.html#cfn-ecs-taskdefinition-environmentfile-value
+ecstdefValue :: Lens' ECSTaskDefinitionEnvironmentFile (Maybe (Val Text))
+ecstdefValue = lens _eCSTaskDefinitionEnvironmentFileValue (\s a -> s { _eCSTaskDefinitionEnvironmentFileValue = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionFirelensConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionFirelensConfiguration.hs
--- a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionFirelensConfiguration.hs
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionFirelensConfiguration.hs
@@ -16,7 +16,7 @@
 data ECSTaskDefinitionFirelensConfiguration =
   ECSTaskDefinitionFirelensConfiguration
   { _eCSTaskDefinitionFirelensConfigurationOptions :: Maybe Object
-  , _eCSTaskDefinitionFirelensConfigurationType :: Val Text
+  , _eCSTaskDefinitionFirelensConfigurationType :: Maybe (Val Text)
   } deriving (Show, Eq)
 
 instance ToJSON ECSTaskDefinitionFirelensConfiguration where
@@ -24,18 +24,17 @@
     object $
     catMaybes
     [ fmap (("Options",) . toJSON) _eCSTaskDefinitionFirelensConfigurationOptions
-    , (Just . ("Type",) . toJSON) _eCSTaskDefinitionFirelensConfigurationType
+    , fmap (("Type",) . toJSON) _eCSTaskDefinitionFirelensConfigurationType
     ]
 
 -- | Constructor for 'ECSTaskDefinitionFirelensConfiguration' containing
 -- required fields as arguments.
 ecsTaskDefinitionFirelensConfiguration
-  :: Val Text -- ^ 'ecstdfcType'
-  -> ECSTaskDefinitionFirelensConfiguration
-ecsTaskDefinitionFirelensConfiguration typearg =
+  :: ECSTaskDefinitionFirelensConfiguration
+ecsTaskDefinitionFirelensConfiguration  =
   ECSTaskDefinitionFirelensConfiguration
   { _eCSTaskDefinitionFirelensConfigurationOptions = Nothing
-  , _eCSTaskDefinitionFirelensConfigurationType = typearg
+  , _eCSTaskDefinitionFirelensConfigurationType = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-firelensconfiguration.html#cfn-ecs-taskdefinition-firelensconfiguration-options
@@ -43,5 +42,5 @@
 ecstdfcOptions = lens _eCSTaskDefinitionFirelensConfigurationOptions (\s a -> s { _eCSTaskDefinitionFirelensConfigurationOptions = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-firelensconfiguration.html#cfn-ecs-taskdefinition-firelensconfiguration-type
-ecstdfcType :: Lens' ECSTaskDefinitionFirelensConfiguration (Val Text)
+ecstdfcType :: Lens' ECSTaskDefinitionFirelensConfiguration (Maybe (Val Text))
 ecstdfcType = lens _eCSTaskDefinitionFirelensConfigurationType (\s a -> s { _eCSTaskDefinitionFirelensConfigurationType = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionVolume.hs b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionVolume.hs
--- a/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionVolume.hs
+++ b/library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionVolume.hs
@@ -9,6 +9,7 @@
 
 import Stratosphere.ResourceImports
 import Stratosphere.ResourceProperties.ECSTaskDefinitionDockerVolumeConfiguration
+import Stratosphere.ResourceProperties.ECSTaskDefinitionEFSVolumeConfiguration
 import Stratosphere.ResourceProperties.ECSTaskDefinitionHostVolumeProperties
 
 -- | Full data type definition for ECSTaskDefinitionVolume. See
@@ -16,6 +17,7 @@
 data ECSTaskDefinitionVolume =
   ECSTaskDefinitionVolume
   { _eCSTaskDefinitionVolumeDockerVolumeConfiguration :: Maybe ECSTaskDefinitionDockerVolumeConfiguration
+  , _eCSTaskDefinitionVolumeEFSVolumeConfiguration :: Maybe ECSTaskDefinitionEFSVolumeConfiguration
   , _eCSTaskDefinitionVolumeHost :: Maybe ECSTaskDefinitionHostVolumeProperties
   , _eCSTaskDefinitionVolumeName :: Maybe (Val Text)
   } deriving (Show, Eq)
@@ -25,6 +27,7 @@
     object $
     catMaybes
     [ fmap (("DockerVolumeConfiguration",) . toJSON) _eCSTaskDefinitionVolumeDockerVolumeConfiguration
+    , fmap (("EFSVolumeConfiguration",) . toJSON) _eCSTaskDefinitionVolumeEFSVolumeConfiguration
     , fmap (("Host",) . toJSON) _eCSTaskDefinitionVolumeHost
     , fmap (("Name",) . toJSON) _eCSTaskDefinitionVolumeName
     ]
@@ -36,6 +39,7 @@
 ecsTaskDefinitionVolume  =
   ECSTaskDefinitionVolume
   { _eCSTaskDefinitionVolumeDockerVolumeConfiguration = Nothing
+  , _eCSTaskDefinitionVolumeEFSVolumeConfiguration = Nothing
   , _eCSTaskDefinitionVolumeHost = Nothing
   , _eCSTaskDefinitionVolumeName = Nothing
   }
@@ -43,6 +47,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volume-dockervolumeconfiguration
 ecstdvDockerVolumeConfiguration :: Lens' ECSTaskDefinitionVolume (Maybe ECSTaskDefinitionDockerVolumeConfiguration)
 ecstdvDockerVolumeConfiguration = lens _eCSTaskDefinitionVolumeDockerVolumeConfiguration (\s a -> s { _eCSTaskDefinitionVolumeDockerVolumeConfiguration = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volume-efsvolumeconfiguration
+ecstdvEFSVolumeConfiguration :: Lens' ECSTaskDefinitionVolume (Maybe ECSTaskDefinitionEFSVolumeConfiguration)
+ecstdvEFSVolumeConfiguration = lens _eCSTaskDefinitionVolumeEFSVolumeConfiguration (\s a -> s { _eCSTaskDefinitionVolumeEFSVolumeConfiguration = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-host
 ecstdvHost :: Lens' ECSTaskDefinitionVolume (Maybe ECSTaskDefinitionHostVolumeProperties)
diff --git a/library-gen/Stratosphere/ResourceProperties/EKSNodegroupLaunchTemplateSpecification.hs b/library-gen/Stratosphere/ResourceProperties/EKSNodegroupLaunchTemplateSpecification.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/EKSNodegroupLaunchTemplateSpecification.hs
@@ -0,0 +1,53 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-launchtemplatespecification.html
+
+module Stratosphere.ResourceProperties.EKSNodegroupLaunchTemplateSpecification where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for EKSNodegroupLaunchTemplateSpecification.
+-- See 'eksNodegroupLaunchTemplateSpecification' for a more convenient
+-- constructor.
+data EKSNodegroupLaunchTemplateSpecification =
+  EKSNodegroupLaunchTemplateSpecification
+  { _eKSNodegroupLaunchTemplateSpecificationId :: Maybe (Val Text)
+  , _eKSNodegroupLaunchTemplateSpecificationName :: Maybe (Val Text)
+  , _eKSNodegroupLaunchTemplateSpecificationVersion :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON EKSNodegroupLaunchTemplateSpecification where
+  toJSON EKSNodegroupLaunchTemplateSpecification{..} =
+    object $
+    catMaybes
+    [ fmap (("Id",) . toJSON) _eKSNodegroupLaunchTemplateSpecificationId
+    , fmap (("Name",) . toJSON) _eKSNodegroupLaunchTemplateSpecificationName
+    , fmap (("Version",) . toJSON) _eKSNodegroupLaunchTemplateSpecificationVersion
+    ]
+
+-- | Constructor for 'EKSNodegroupLaunchTemplateSpecification' containing
+-- required fields as arguments.
+eksNodegroupLaunchTemplateSpecification
+  :: EKSNodegroupLaunchTemplateSpecification
+eksNodegroupLaunchTemplateSpecification  =
+  EKSNodegroupLaunchTemplateSpecification
+  { _eKSNodegroupLaunchTemplateSpecificationId = Nothing
+  , _eKSNodegroupLaunchTemplateSpecificationName = Nothing
+  , _eKSNodegroupLaunchTemplateSpecificationVersion = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-launchtemplatespecification.html#cfn-eks-nodegroup-launchtemplatespecification-id
+eksnltsId :: Lens' EKSNodegroupLaunchTemplateSpecification (Maybe (Val Text))
+eksnltsId = lens _eKSNodegroupLaunchTemplateSpecificationId (\s a -> s { _eKSNodegroupLaunchTemplateSpecificationId = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-launchtemplatespecification.html#cfn-eks-nodegroup-launchtemplatespecification-name
+eksnltsName :: Lens' EKSNodegroupLaunchTemplateSpecification (Maybe (Val Text))
+eksnltsName = lens _eKSNodegroupLaunchTemplateSpecificationName (\s a -> s { _eKSNodegroupLaunchTemplateSpecificationName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-launchtemplatespecification.html#cfn-eks-nodegroup-launchtemplatespecification-version
+eksnltsVersion :: Lens' EKSNodegroupLaunchTemplateSpecification (Maybe (Val Text))
+eksnltsVersion = lens _eKSNodegroupLaunchTemplateSpecificationVersion (\s a -> s { _eKSNodegroupLaunchTemplateSpecificationVersion = 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
@@ -19,6 +19,7 @@
   , _fSxFileSystemLustreConfigurationCopyTagsToBackups :: Maybe (Val Bool)
   , _fSxFileSystemLustreConfigurationDailyAutomaticBackupStartTime :: Maybe (Val Text)
   , _fSxFileSystemLustreConfigurationDeploymentType :: Maybe (Val Text)
+  , _fSxFileSystemLustreConfigurationDriveCacheType :: Maybe (Val Text)
   , _fSxFileSystemLustreConfigurationExportPath :: Maybe (Val Text)
   , _fSxFileSystemLustreConfigurationImportPath :: Maybe (Val Text)
   , _fSxFileSystemLustreConfigurationImportedFileChunkSize :: Maybe (Val Integer)
@@ -35,6 +36,7 @@
     , fmap (("CopyTagsToBackups",) . toJSON) _fSxFileSystemLustreConfigurationCopyTagsToBackups
     , fmap (("DailyAutomaticBackupStartTime",) . toJSON) _fSxFileSystemLustreConfigurationDailyAutomaticBackupStartTime
     , fmap (("DeploymentType",) . toJSON) _fSxFileSystemLustreConfigurationDeploymentType
+    , fmap (("DriveCacheType",) . toJSON) _fSxFileSystemLustreConfigurationDriveCacheType
     , fmap (("ExportPath",) . toJSON) _fSxFileSystemLustreConfigurationExportPath
     , fmap (("ImportPath",) . toJSON) _fSxFileSystemLustreConfigurationImportPath
     , fmap (("ImportedFileChunkSize",) . toJSON) _fSxFileSystemLustreConfigurationImportedFileChunkSize
@@ -53,6 +55,7 @@
   , _fSxFileSystemLustreConfigurationCopyTagsToBackups = Nothing
   , _fSxFileSystemLustreConfigurationDailyAutomaticBackupStartTime = Nothing
   , _fSxFileSystemLustreConfigurationDeploymentType = Nothing
+  , _fSxFileSystemLustreConfigurationDriveCacheType = Nothing
   , _fSxFileSystemLustreConfigurationExportPath = Nothing
   , _fSxFileSystemLustreConfigurationImportPath = Nothing
   , _fSxFileSystemLustreConfigurationImportedFileChunkSize = Nothing
@@ -79,6 +82,10 @@
 -- | 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))
 fsfslcDeploymentType = lens _fSxFileSystemLustreConfigurationDeploymentType (\s a -> s { _fSxFileSystemLustreConfigurationDeploymentType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-drivecachetype
+fsfslcDriveCacheType :: Lens' FSxFileSystemLustreConfiguration (Maybe (Val Text))
+fsfslcDriveCacheType = lens _fSxFileSystemLustreConfigurationDriveCacheType (\s a -> s { _fSxFileSystemLustreConfigurationDriveCacheType = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-exportpath
 fsfslcExportPath :: Lens' FSxFileSystemLustreConfiguration (Maybe (Val Text))
diff --git a/library-gen/Stratosphere/ResourceProperties/IoTProvisioningTemplateTags.hs b/library-gen/Stratosphere/ResourceProperties/IoTProvisioningTemplateTags.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/IoTProvisioningTemplateTags.hs
@@ -0,0 +1,38 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-provisioningtemplate-tags.html
+
+module Stratosphere.ResourceProperties.IoTProvisioningTemplateTags where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for IoTProvisioningTemplateTags. See
+-- 'ioTProvisioningTemplateTags' for a more convenient constructor.
+data IoTProvisioningTemplateTags =
+  IoTProvisioningTemplateTags
+  { _ioTProvisioningTemplateTagsTags :: Maybe [Object]
+  } deriving (Show, Eq)
+
+instance ToJSON IoTProvisioningTemplateTags where
+  toJSON IoTProvisioningTemplateTags{..} =
+    object $
+    catMaybes
+    [ fmap (("Tags",) . toJSON) _ioTProvisioningTemplateTagsTags
+    ]
+
+-- | Constructor for 'IoTProvisioningTemplateTags' containing required fields
+-- as arguments.
+ioTProvisioningTemplateTags
+  :: IoTProvisioningTemplateTags
+ioTProvisioningTemplateTags  =
+  IoTProvisioningTemplateTags
+  { _ioTProvisioningTemplateTagsTags = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-provisioningtemplate-tags.html#cfn-iot-provisioningtemplate-tags-tags
+itpttTags :: Lens' IoTProvisioningTemplateTags (Maybe [Object])
+itpttTags = lens _ioTProvisioningTemplateTagsTags (\s a -> s { _ioTProvisioningTemplateTagsTags = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/LambdaEventSourceMappingDestinationConfig.hs b/library-gen/Stratosphere/ResourceProperties/LambdaEventSourceMappingDestinationConfig.hs
--- a/library-gen/Stratosphere/ResourceProperties/LambdaEventSourceMappingDestinationConfig.hs
+++ b/library-gen/Stratosphere/ResourceProperties/LambdaEventSourceMappingDestinationConfig.hs
@@ -15,26 +15,25 @@
 -- constructor.
 data LambdaEventSourceMappingDestinationConfig =
   LambdaEventSourceMappingDestinationConfig
-  { _lambdaEventSourceMappingDestinationConfigOnFailure :: LambdaEventSourceMappingOnFailure
+  { _lambdaEventSourceMappingDestinationConfigOnFailure :: Maybe LambdaEventSourceMappingOnFailure
   } deriving (Show, Eq)
 
 instance ToJSON LambdaEventSourceMappingDestinationConfig where
   toJSON LambdaEventSourceMappingDestinationConfig{..} =
     object $
     catMaybes
-    [ (Just . ("OnFailure",) . toJSON) _lambdaEventSourceMappingDestinationConfigOnFailure
+    [ fmap (("OnFailure",) . toJSON) _lambdaEventSourceMappingDestinationConfigOnFailure
     ]
 
 -- | Constructor for 'LambdaEventSourceMappingDestinationConfig' containing
 -- required fields as arguments.
 lambdaEventSourceMappingDestinationConfig
-  :: LambdaEventSourceMappingOnFailure -- ^ 'lesmdcOnFailure'
-  -> LambdaEventSourceMappingDestinationConfig
-lambdaEventSourceMappingDestinationConfig onFailurearg =
+  :: LambdaEventSourceMappingDestinationConfig
+lambdaEventSourceMappingDestinationConfig  =
   LambdaEventSourceMappingDestinationConfig
-  { _lambdaEventSourceMappingDestinationConfigOnFailure = onFailurearg
+  { _lambdaEventSourceMappingDestinationConfigOnFailure = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-destinationconfig.html#cfn-lambda-eventsourcemapping-destinationconfig-onfailure
-lesmdcOnFailure :: Lens' LambdaEventSourceMappingDestinationConfig LambdaEventSourceMappingOnFailure
+lesmdcOnFailure :: Lens' LambdaEventSourceMappingDestinationConfig (Maybe LambdaEventSourceMappingOnFailure)
 lesmdcOnFailure = lens _lambdaEventSourceMappingDestinationConfigOnFailure (\s a -> s { _lambdaEventSourceMappingDestinationConfigOnFailure = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/LambdaEventSourceMappingOnFailure.hs b/library-gen/Stratosphere/ResourceProperties/LambdaEventSourceMappingOnFailure.hs
--- a/library-gen/Stratosphere/ResourceProperties/LambdaEventSourceMappingOnFailure.hs
+++ b/library-gen/Stratosphere/ResourceProperties/LambdaEventSourceMappingOnFailure.hs
@@ -14,26 +14,25 @@
 -- 'lambdaEventSourceMappingOnFailure' for a more convenient constructor.
 data LambdaEventSourceMappingOnFailure =
   LambdaEventSourceMappingOnFailure
-  { _lambdaEventSourceMappingOnFailureDestination :: Val Text
+  { _lambdaEventSourceMappingOnFailureDestination :: Maybe (Val Text)
   } deriving (Show, Eq)
 
 instance ToJSON LambdaEventSourceMappingOnFailure where
   toJSON LambdaEventSourceMappingOnFailure{..} =
     object $
     catMaybes
-    [ (Just . ("Destination",) . toJSON) _lambdaEventSourceMappingOnFailureDestination
+    [ fmap (("Destination",) . toJSON) _lambdaEventSourceMappingOnFailureDestination
     ]
 
 -- | Constructor for 'LambdaEventSourceMappingOnFailure' containing required
 -- fields as arguments.
 lambdaEventSourceMappingOnFailure
-  :: Val Text -- ^ 'lesmofDestination'
-  -> LambdaEventSourceMappingOnFailure
-lambdaEventSourceMappingOnFailure destinationarg =
+  :: LambdaEventSourceMappingOnFailure
+lambdaEventSourceMappingOnFailure  =
   LambdaEventSourceMappingOnFailure
-  { _lambdaEventSourceMappingOnFailureDestination = destinationarg
+  { _lambdaEventSourceMappingOnFailureDestination = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-eventsourcemapping-onfailure.html#cfn-lambda-eventsourcemapping-onfailure-destination
-lesmofDestination :: Lens' LambdaEventSourceMappingOnFailure (Val Text)
+lesmofDestination :: Lens' LambdaEventSourceMappingOnFailure (Maybe (Val Text))
 lesmofDestination = lens _lambdaEventSourceMappingOnFailureDestination (\s a -> s { _lambdaEventSourceMappingOnFailureDestination = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleBaselineConfig.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleBaselineConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleBaselineConfig.hs
@@ -0,0 +1,47 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-baselineconfig.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleBaselineConfig where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleConstraintsResource
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleStatisticsResource
+
+-- | Full data type definition for SageMakerMonitoringScheduleBaselineConfig.
+-- See 'sageMakerMonitoringScheduleBaselineConfig' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleBaselineConfig =
+  SageMakerMonitoringScheduleBaselineConfig
+  { _sageMakerMonitoringScheduleBaselineConfigConstraintsResource :: Maybe SageMakerMonitoringScheduleConstraintsResource
+  , _sageMakerMonitoringScheduleBaselineConfigStatisticsResource :: Maybe SageMakerMonitoringScheduleStatisticsResource
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleBaselineConfig where
+  toJSON SageMakerMonitoringScheduleBaselineConfig{..} =
+    object $
+    catMaybes
+    [ fmap (("ConstraintsResource",) . toJSON) _sageMakerMonitoringScheduleBaselineConfigConstraintsResource
+    , fmap (("StatisticsResource",) . toJSON) _sageMakerMonitoringScheduleBaselineConfigStatisticsResource
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleBaselineConfig' containing
+-- required fields as arguments.
+sageMakerMonitoringScheduleBaselineConfig
+  :: SageMakerMonitoringScheduleBaselineConfig
+sageMakerMonitoringScheduleBaselineConfig  =
+  SageMakerMonitoringScheduleBaselineConfig
+  { _sageMakerMonitoringScheduleBaselineConfigConstraintsResource = Nothing
+  , _sageMakerMonitoringScheduleBaselineConfigStatisticsResource = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-baselineconfig.html#cfn-sagemaker-monitoringschedule-baselineconfig-constraintsresource
+smmsbcConstraintsResource :: Lens' SageMakerMonitoringScheduleBaselineConfig (Maybe SageMakerMonitoringScheduleConstraintsResource)
+smmsbcConstraintsResource = lens _sageMakerMonitoringScheduleBaselineConfigConstraintsResource (\s a -> s { _sageMakerMonitoringScheduleBaselineConfigConstraintsResource = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-baselineconfig.html#cfn-sagemaker-monitoringschedule-baselineconfig-statisticsresource
+smmsbcStatisticsResource :: Lens' SageMakerMonitoringScheduleBaselineConfig (Maybe SageMakerMonitoringScheduleStatisticsResource)
+smmsbcStatisticsResource = lens _sageMakerMonitoringScheduleBaselineConfigStatisticsResource (\s a -> s { _sageMakerMonitoringScheduleBaselineConfigStatisticsResource = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleClusterConfig.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleClusterConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleClusterConfig.hs
@@ -0,0 +1,63 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-clusterconfig.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleClusterConfig where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for SageMakerMonitoringScheduleClusterConfig.
+-- See 'sageMakerMonitoringScheduleClusterConfig' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleClusterConfig =
+  SageMakerMonitoringScheduleClusterConfig
+  { _sageMakerMonitoringScheduleClusterConfigInstanceCount :: Val Integer
+  , _sageMakerMonitoringScheduleClusterConfigInstanceType :: Val Text
+  , _sageMakerMonitoringScheduleClusterConfigVolumeKmsKeyId :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleClusterConfigVolumeSizeInGB :: Val Integer
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleClusterConfig where
+  toJSON SageMakerMonitoringScheduleClusterConfig{..} =
+    object $
+    catMaybes
+    [ (Just . ("InstanceCount",) . toJSON) _sageMakerMonitoringScheduleClusterConfigInstanceCount
+    , (Just . ("InstanceType",) . toJSON) _sageMakerMonitoringScheduleClusterConfigInstanceType
+    , fmap (("VolumeKmsKeyId",) . toJSON) _sageMakerMonitoringScheduleClusterConfigVolumeKmsKeyId
+    , (Just . ("VolumeSizeInGB",) . toJSON) _sageMakerMonitoringScheduleClusterConfigVolumeSizeInGB
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleClusterConfig' containing
+-- required fields as arguments.
+sageMakerMonitoringScheduleClusterConfig
+  :: Val Integer -- ^ 'smmsccInstanceCount'
+  -> Val Text -- ^ 'smmsccInstanceType'
+  -> Val Integer -- ^ 'smmsccVolumeSizeInGB'
+  -> SageMakerMonitoringScheduleClusterConfig
+sageMakerMonitoringScheduleClusterConfig instanceCountarg instanceTypearg volumeSizeInGBarg =
+  SageMakerMonitoringScheduleClusterConfig
+  { _sageMakerMonitoringScheduleClusterConfigInstanceCount = instanceCountarg
+  , _sageMakerMonitoringScheduleClusterConfigInstanceType = instanceTypearg
+  , _sageMakerMonitoringScheduleClusterConfigVolumeKmsKeyId = Nothing
+  , _sageMakerMonitoringScheduleClusterConfigVolumeSizeInGB = volumeSizeInGBarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-clusterconfig.html#cfn-sagemaker-monitoringschedule-clusterconfig-instancecount
+smmsccInstanceCount :: Lens' SageMakerMonitoringScheduleClusterConfig (Val Integer)
+smmsccInstanceCount = lens _sageMakerMonitoringScheduleClusterConfigInstanceCount (\s a -> s { _sageMakerMonitoringScheduleClusterConfigInstanceCount = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-clusterconfig.html#cfn-sagemaker-monitoringschedule-clusterconfig-instancetype
+smmsccInstanceType :: Lens' SageMakerMonitoringScheduleClusterConfig (Val Text)
+smmsccInstanceType = lens _sageMakerMonitoringScheduleClusterConfigInstanceType (\s a -> s { _sageMakerMonitoringScheduleClusterConfigInstanceType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-clusterconfig.html#cfn-sagemaker-monitoringschedule-clusterconfig-volumekmskeyid
+smmsccVolumeKmsKeyId :: Lens' SageMakerMonitoringScheduleClusterConfig (Maybe (Val Text))
+smmsccVolumeKmsKeyId = lens _sageMakerMonitoringScheduleClusterConfigVolumeKmsKeyId (\s a -> s { _sageMakerMonitoringScheduleClusterConfigVolumeKmsKeyId = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-clusterconfig.html#cfn-sagemaker-monitoringschedule-clusterconfig-volumesizeingb
+smmsccVolumeSizeInGB :: Lens' SageMakerMonitoringScheduleClusterConfig (Val Integer)
+smmsccVolumeSizeInGB = lens _sageMakerMonitoringScheduleClusterConfigVolumeSizeInGB (\s a -> s { _sageMakerMonitoringScheduleClusterConfigVolumeSizeInGB = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleConstraintsResource.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleConstraintsResource.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleConstraintsResource.hs
@@ -0,0 +1,40 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-constraintsresource.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleConstraintsResource where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleConstraintsResource. See
+-- 'sageMakerMonitoringScheduleConstraintsResource' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleConstraintsResource =
+  SageMakerMonitoringScheduleConstraintsResource
+  { _sageMakerMonitoringScheduleConstraintsResourceS3Uri :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleConstraintsResource where
+  toJSON SageMakerMonitoringScheduleConstraintsResource{..} =
+    object $
+    catMaybes
+    [ fmap (("S3Uri",) . toJSON) _sageMakerMonitoringScheduleConstraintsResourceS3Uri
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleConstraintsResource'
+-- containing required fields as arguments.
+sageMakerMonitoringScheduleConstraintsResource
+  :: SageMakerMonitoringScheduleConstraintsResource
+sageMakerMonitoringScheduleConstraintsResource  =
+  SageMakerMonitoringScheduleConstraintsResource
+  { _sageMakerMonitoringScheduleConstraintsResourceS3Uri = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-constraintsresource.html#cfn-sagemaker-monitoringschedule-constraintsresource-s3uri
+smmscrS3Uri :: Lens' SageMakerMonitoringScheduleConstraintsResource (Maybe (Val Text))
+smmscrS3Uri = lens _sageMakerMonitoringScheduleConstraintsResourceS3Uri (\s a -> s { _sageMakerMonitoringScheduleConstraintsResourceS3Uri = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleEndpointInput.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleEndpointInput.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleEndpointInput.hs
@@ -0,0 +1,62 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-endpointinput.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleEndpointInput where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for SageMakerMonitoringScheduleEndpointInput.
+-- See 'sageMakerMonitoringScheduleEndpointInput' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleEndpointInput =
+  SageMakerMonitoringScheduleEndpointInput
+  { _sageMakerMonitoringScheduleEndpointInputEndpointName :: Val Text
+  , _sageMakerMonitoringScheduleEndpointInputLocalPath :: Val Text
+  , _sageMakerMonitoringScheduleEndpointInputS3DataDistributionType :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleEndpointInputS3InputMode :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleEndpointInput where
+  toJSON SageMakerMonitoringScheduleEndpointInput{..} =
+    object $
+    catMaybes
+    [ (Just . ("EndpointName",) . toJSON) _sageMakerMonitoringScheduleEndpointInputEndpointName
+    , (Just . ("LocalPath",) . toJSON) _sageMakerMonitoringScheduleEndpointInputLocalPath
+    , fmap (("S3DataDistributionType",) . toJSON) _sageMakerMonitoringScheduleEndpointInputS3DataDistributionType
+    , fmap (("S3InputMode",) . toJSON) _sageMakerMonitoringScheduleEndpointInputS3InputMode
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleEndpointInput' containing
+-- required fields as arguments.
+sageMakerMonitoringScheduleEndpointInput
+  :: Val Text -- ^ 'smmseiEndpointName'
+  -> Val Text -- ^ 'smmseiLocalPath'
+  -> SageMakerMonitoringScheduleEndpointInput
+sageMakerMonitoringScheduleEndpointInput endpointNamearg localPatharg =
+  SageMakerMonitoringScheduleEndpointInput
+  { _sageMakerMonitoringScheduleEndpointInputEndpointName = endpointNamearg
+  , _sageMakerMonitoringScheduleEndpointInputLocalPath = localPatharg
+  , _sageMakerMonitoringScheduleEndpointInputS3DataDistributionType = Nothing
+  , _sageMakerMonitoringScheduleEndpointInputS3InputMode = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-endpointinput.html#cfn-sagemaker-monitoringschedule-endpointinput-endpointname
+smmseiEndpointName :: Lens' SageMakerMonitoringScheduleEndpointInput (Val Text)
+smmseiEndpointName = lens _sageMakerMonitoringScheduleEndpointInputEndpointName (\s a -> s { _sageMakerMonitoringScheduleEndpointInputEndpointName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-endpointinput.html#cfn-sagemaker-monitoringschedule-endpointinput-localpath
+smmseiLocalPath :: Lens' SageMakerMonitoringScheduleEndpointInput (Val Text)
+smmseiLocalPath = lens _sageMakerMonitoringScheduleEndpointInputLocalPath (\s a -> s { _sageMakerMonitoringScheduleEndpointInputLocalPath = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-endpointinput.html#cfn-sagemaker-monitoringschedule-endpointinput-s3datadistributiontype
+smmseiS3DataDistributionType :: Lens' SageMakerMonitoringScheduleEndpointInput (Maybe (Val Text))
+smmseiS3DataDistributionType = lens _sageMakerMonitoringScheduleEndpointInputS3DataDistributionType (\s a -> s { _sageMakerMonitoringScheduleEndpointInputS3DataDistributionType = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-endpointinput.html#cfn-sagemaker-monitoringschedule-endpointinput-s3inputmode
+smmseiS3InputMode :: Lens' SageMakerMonitoringScheduleEndpointInput (Maybe (Val Text))
+smmseiS3InputMode = lens _sageMakerMonitoringScheduleEndpointInputS3InputMode (\s a -> s { _sageMakerMonitoringScheduleEndpointInputS3InputMode = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringAppSpecification.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringAppSpecification.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringAppSpecification.hs
@@ -0,0 +1,69 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringAppSpecification where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleMonitoringAppSpecification. See
+-- 'sageMakerMonitoringScheduleMonitoringAppSpecification' for a more
+-- convenient constructor.
+data SageMakerMonitoringScheduleMonitoringAppSpecification =
+  SageMakerMonitoringScheduleMonitoringAppSpecification
+  { _sageMakerMonitoringScheduleMonitoringAppSpecificationContainerArguments :: Maybe (ValList Text)
+  , _sageMakerMonitoringScheduleMonitoringAppSpecificationContainerEntrypoint :: Maybe (ValList Text)
+  , _sageMakerMonitoringScheduleMonitoringAppSpecificationImageUri :: Val Text
+  , _sageMakerMonitoringScheduleMonitoringAppSpecificationPostAnalyticsProcessorSourceUri :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleMonitoringAppSpecificationRecordPreprocessorSourceUri :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleMonitoringAppSpecification where
+  toJSON SageMakerMonitoringScheduleMonitoringAppSpecification{..} =
+    object $
+    catMaybes
+    [ fmap (("ContainerArguments",) . toJSON) _sageMakerMonitoringScheduleMonitoringAppSpecificationContainerArguments
+    , fmap (("ContainerEntrypoint",) . toJSON) _sageMakerMonitoringScheduleMonitoringAppSpecificationContainerEntrypoint
+    , (Just . ("ImageUri",) . toJSON) _sageMakerMonitoringScheduleMonitoringAppSpecificationImageUri
+    , fmap (("PostAnalyticsProcessorSourceUri",) . toJSON) _sageMakerMonitoringScheduleMonitoringAppSpecificationPostAnalyticsProcessorSourceUri
+    , fmap (("RecordPreprocessorSourceUri",) . toJSON) _sageMakerMonitoringScheduleMonitoringAppSpecificationRecordPreprocessorSourceUri
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleMonitoringAppSpecification'
+-- containing required fields as arguments.
+sageMakerMonitoringScheduleMonitoringAppSpecification
+  :: Val Text -- ^ 'smmsmasImageUri'
+  -> SageMakerMonitoringScheduleMonitoringAppSpecification
+sageMakerMonitoringScheduleMonitoringAppSpecification imageUriarg =
+  SageMakerMonitoringScheduleMonitoringAppSpecification
+  { _sageMakerMonitoringScheduleMonitoringAppSpecificationContainerArguments = Nothing
+  , _sageMakerMonitoringScheduleMonitoringAppSpecificationContainerEntrypoint = Nothing
+  , _sageMakerMonitoringScheduleMonitoringAppSpecificationImageUri = imageUriarg
+  , _sageMakerMonitoringScheduleMonitoringAppSpecificationPostAnalyticsProcessorSourceUri = Nothing
+  , _sageMakerMonitoringScheduleMonitoringAppSpecificationRecordPreprocessorSourceUri = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html#cfn-sagemaker-monitoringschedule-monitoringappspecification-containerarguments
+smmsmasContainerArguments :: Lens' SageMakerMonitoringScheduleMonitoringAppSpecification (Maybe (ValList Text))
+smmsmasContainerArguments = lens _sageMakerMonitoringScheduleMonitoringAppSpecificationContainerArguments (\s a -> s { _sageMakerMonitoringScheduleMonitoringAppSpecificationContainerArguments = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html#cfn-sagemaker-monitoringschedule-monitoringappspecification-containerentrypoint
+smmsmasContainerEntrypoint :: Lens' SageMakerMonitoringScheduleMonitoringAppSpecification (Maybe (ValList Text))
+smmsmasContainerEntrypoint = lens _sageMakerMonitoringScheduleMonitoringAppSpecificationContainerEntrypoint (\s a -> s { _sageMakerMonitoringScheduleMonitoringAppSpecificationContainerEntrypoint = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html#cfn-sagemaker-monitoringschedule-monitoringappspecification-imageuri
+smmsmasImageUri :: Lens' SageMakerMonitoringScheduleMonitoringAppSpecification (Val Text)
+smmsmasImageUri = lens _sageMakerMonitoringScheduleMonitoringAppSpecificationImageUri (\s a -> s { _sageMakerMonitoringScheduleMonitoringAppSpecificationImageUri = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html#cfn-sagemaker-monitoringschedule-monitoringappspecification-postanalyticsprocessorsourceuri
+smmsmasPostAnalyticsProcessorSourceUri :: Lens' SageMakerMonitoringScheduleMonitoringAppSpecification (Maybe (Val Text))
+smmsmasPostAnalyticsProcessorSourceUri = lens _sageMakerMonitoringScheduleMonitoringAppSpecificationPostAnalyticsProcessorSourceUri (\s a -> s { _sageMakerMonitoringScheduleMonitoringAppSpecificationPostAnalyticsProcessorSourceUri = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringappspecification.html#cfn-sagemaker-monitoringschedule-monitoringappspecification-recordpreprocessorsourceuri
+smmsmasRecordPreprocessorSourceUri :: Lens' SageMakerMonitoringScheduleMonitoringAppSpecification (Maybe (Val Text))
+smmsmasRecordPreprocessorSourceUri = lens _sageMakerMonitoringScheduleMonitoringAppSpecificationRecordPreprocessorSourceUri (\s a -> s { _sageMakerMonitoringScheduleMonitoringAppSpecificationRecordPreprocessorSourceUri = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringExecutionSummary.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringExecutionSummary.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringExecutionSummary.hs
@@ -0,0 +1,94 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringExecutionSummary where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleMonitoringExecutionSummary. See
+-- 'sageMakerMonitoringScheduleMonitoringExecutionSummary' for a more
+-- convenient constructor.
+data SageMakerMonitoringScheduleMonitoringExecutionSummary =
+  SageMakerMonitoringScheduleMonitoringExecutionSummary
+  { _sageMakerMonitoringScheduleMonitoringExecutionSummaryCreationTime :: Val Text
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryEndpointName :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryFailureReason :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryLastModifiedTime :: Val Text
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryMonitoringExecutionStatus :: Val Text
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryMonitoringScheduleName :: Val Text
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryProcessingJobArn :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryScheduledTime :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleMonitoringExecutionSummary where
+  toJSON SageMakerMonitoringScheduleMonitoringExecutionSummary{..} =
+    object $
+    catMaybes
+    [ (Just . ("CreationTime",) . toJSON) _sageMakerMonitoringScheduleMonitoringExecutionSummaryCreationTime
+    , fmap (("EndpointName",) . toJSON) _sageMakerMonitoringScheduleMonitoringExecutionSummaryEndpointName
+    , fmap (("FailureReason",) . toJSON) _sageMakerMonitoringScheduleMonitoringExecutionSummaryFailureReason
+    , (Just . ("LastModifiedTime",) . toJSON) _sageMakerMonitoringScheduleMonitoringExecutionSummaryLastModifiedTime
+    , (Just . ("MonitoringExecutionStatus",) . toJSON) _sageMakerMonitoringScheduleMonitoringExecutionSummaryMonitoringExecutionStatus
+    , (Just . ("MonitoringScheduleName",) . toJSON) _sageMakerMonitoringScheduleMonitoringExecutionSummaryMonitoringScheduleName
+    , fmap (("ProcessingJobArn",) . toJSON) _sageMakerMonitoringScheduleMonitoringExecutionSummaryProcessingJobArn
+    , (Just . ("ScheduledTime",) . toJSON) _sageMakerMonitoringScheduleMonitoringExecutionSummaryScheduledTime
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleMonitoringExecutionSummary'
+-- containing required fields as arguments.
+sageMakerMonitoringScheduleMonitoringExecutionSummary
+  :: Val Text -- ^ 'smmsmesCreationTime'
+  -> Val Text -- ^ 'smmsmesLastModifiedTime'
+  -> Val Text -- ^ 'smmsmesMonitoringExecutionStatus'
+  -> Val Text -- ^ 'smmsmesMonitoringScheduleName'
+  -> Val Text -- ^ 'smmsmesScheduledTime'
+  -> SageMakerMonitoringScheduleMonitoringExecutionSummary
+sageMakerMonitoringScheduleMonitoringExecutionSummary creationTimearg lastModifiedTimearg monitoringExecutionStatusarg monitoringScheduleNamearg scheduledTimearg =
+  SageMakerMonitoringScheduleMonitoringExecutionSummary
+  { _sageMakerMonitoringScheduleMonitoringExecutionSummaryCreationTime = creationTimearg
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryEndpointName = Nothing
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryFailureReason = Nothing
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryLastModifiedTime = lastModifiedTimearg
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryMonitoringExecutionStatus = monitoringExecutionStatusarg
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryMonitoringScheduleName = monitoringScheduleNamearg
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryProcessingJobArn = Nothing
+  , _sageMakerMonitoringScheduleMonitoringExecutionSummaryScheduledTime = scheduledTimearg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-creationtime
+smmsmesCreationTime :: Lens' SageMakerMonitoringScheduleMonitoringExecutionSummary (Val Text)
+smmsmesCreationTime = lens _sageMakerMonitoringScheduleMonitoringExecutionSummaryCreationTime (\s a -> s { _sageMakerMonitoringScheduleMonitoringExecutionSummaryCreationTime = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-endpointname
+smmsmesEndpointName :: Lens' SageMakerMonitoringScheduleMonitoringExecutionSummary (Maybe (Val Text))
+smmsmesEndpointName = lens _sageMakerMonitoringScheduleMonitoringExecutionSummaryEndpointName (\s a -> s { _sageMakerMonitoringScheduleMonitoringExecutionSummaryEndpointName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-failurereason
+smmsmesFailureReason :: Lens' SageMakerMonitoringScheduleMonitoringExecutionSummary (Maybe (Val Text))
+smmsmesFailureReason = lens _sageMakerMonitoringScheduleMonitoringExecutionSummaryFailureReason (\s a -> s { _sageMakerMonitoringScheduleMonitoringExecutionSummaryFailureReason = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-lastmodifiedtime
+smmsmesLastModifiedTime :: Lens' SageMakerMonitoringScheduleMonitoringExecutionSummary (Val Text)
+smmsmesLastModifiedTime = lens _sageMakerMonitoringScheduleMonitoringExecutionSummaryLastModifiedTime (\s a -> s { _sageMakerMonitoringScheduleMonitoringExecutionSummaryLastModifiedTime = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-monitoringexecutionstatus
+smmsmesMonitoringExecutionStatus :: Lens' SageMakerMonitoringScheduleMonitoringExecutionSummary (Val Text)
+smmsmesMonitoringExecutionStatus = lens _sageMakerMonitoringScheduleMonitoringExecutionSummaryMonitoringExecutionStatus (\s a -> s { _sageMakerMonitoringScheduleMonitoringExecutionSummaryMonitoringExecutionStatus = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-monitoringschedulename
+smmsmesMonitoringScheduleName :: Lens' SageMakerMonitoringScheduleMonitoringExecutionSummary (Val Text)
+smmsmesMonitoringScheduleName = lens _sageMakerMonitoringScheduleMonitoringExecutionSummaryMonitoringScheduleName (\s a -> s { _sageMakerMonitoringScheduleMonitoringExecutionSummaryMonitoringScheduleName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-processingjobarn
+smmsmesProcessingJobArn :: Lens' SageMakerMonitoringScheduleMonitoringExecutionSummary (Maybe (Val Text))
+smmsmesProcessingJobArn = lens _sageMakerMonitoringScheduleMonitoringExecutionSummaryProcessingJobArn (\s a -> s { _sageMakerMonitoringScheduleMonitoringExecutionSummaryProcessingJobArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringexecutionsummary.html#cfn-sagemaker-monitoringschedule-monitoringexecutionsummary-scheduledtime
+smmsmesScheduledTime :: Lens' SageMakerMonitoringScheduleMonitoringExecutionSummary (Val Text)
+smmsmesScheduledTime = lens _sageMakerMonitoringScheduleMonitoringExecutionSummaryScheduledTime (\s a -> s { _sageMakerMonitoringScheduleMonitoringExecutionSummaryScheduledTime = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringInput.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringInput.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringInput.hs
@@ -0,0 +1,40 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringinput.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringInput where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleEndpointInput
+
+-- | Full data type definition for SageMakerMonitoringScheduleMonitoringInput.
+-- See 'sageMakerMonitoringScheduleMonitoringInput' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleMonitoringInput =
+  SageMakerMonitoringScheduleMonitoringInput
+  { _sageMakerMonitoringScheduleMonitoringInputEndpointInput :: SageMakerMonitoringScheduleEndpointInput
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleMonitoringInput where
+  toJSON SageMakerMonitoringScheduleMonitoringInput{..} =
+    object $
+    catMaybes
+    [ (Just . ("EndpointInput",) . toJSON) _sageMakerMonitoringScheduleMonitoringInputEndpointInput
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleMonitoringInput' containing
+-- required fields as arguments.
+sageMakerMonitoringScheduleMonitoringInput
+  :: SageMakerMonitoringScheduleEndpointInput -- ^ 'smmsmiEndpointInput'
+  -> SageMakerMonitoringScheduleMonitoringInput
+sageMakerMonitoringScheduleMonitoringInput endpointInputarg =
+  SageMakerMonitoringScheduleMonitoringInput
+  { _sageMakerMonitoringScheduleMonitoringInputEndpointInput = endpointInputarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringinput.html#cfn-sagemaker-monitoringschedule-monitoringinput-endpointinput
+smmsmiEndpointInput :: Lens' SageMakerMonitoringScheduleMonitoringInput SageMakerMonitoringScheduleEndpointInput
+smmsmiEndpointInput = lens _sageMakerMonitoringScheduleMonitoringInputEndpointInput (\s a -> s { _sageMakerMonitoringScheduleMonitoringInputEndpointInput = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringInputs.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringInputs.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringInputs.hs
@@ -0,0 +1,40 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringinputs.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringInputs where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringInput
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleMonitoringInputs. See
+-- 'sageMakerMonitoringScheduleMonitoringInputs' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleMonitoringInputs =
+  SageMakerMonitoringScheduleMonitoringInputs
+  { _sageMakerMonitoringScheduleMonitoringInputsMonitoringInputs :: Maybe [SageMakerMonitoringScheduleMonitoringInput]
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleMonitoringInputs where
+  toJSON SageMakerMonitoringScheduleMonitoringInputs{..} =
+    object $
+    catMaybes
+    [ fmap (("MonitoringInputs",) . toJSON) _sageMakerMonitoringScheduleMonitoringInputsMonitoringInputs
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleMonitoringInputs' containing
+-- required fields as arguments.
+sageMakerMonitoringScheduleMonitoringInputs
+  :: SageMakerMonitoringScheduleMonitoringInputs
+sageMakerMonitoringScheduleMonitoringInputs  =
+  SageMakerMonitoringScheduleMonitoringInputs
+  { _sageMakerMonitoringScheduleMonitoringInputsMonitoringInputs = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringinputs.html#cfn-sagemaker-monitoringschedule-monitoringinputs-monitoringinputs
+smmsmiMonitoringInputs :: Lens' SageMakerMonitoringScheduleMonitoringInputs (Maybe [SageMakerMonitoringScheduleMonitoringInput])
+smmsmiMonitoringInputs = lens _sageMakerMonitoringScheduleMonitoringInputsMonitoringInputs (\s a -> s { _sageMakerMonitoringScheduleMonitoringInputsMonitoringInputs = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringJobDefinition.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringJobDefinition.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringJobDefinition.hs
@@ -0,0 +1,100 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringJobDefinition where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleBaselineConfig
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringAppSpecification
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringInputs
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringOutputConfig
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringResources
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleNetworkConfig
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleStoppingCondition
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleMonitoringJobDefinition. See
+-- 'sageMakerMonitoringScheduleMonitoringJobDefinition' for a more
+-- convenient constructor.
+data SageMakerMonitoringScheduleMonitoringJobDefinition =
+  SageMakerMonitoringScheduleMonitoringJobDefinition
+  { _sageMakerMonitoringScheduleMonitoringJobDefinitionBaselineConfig :: Maybe SageMakerMonitoringScheduleBaselineConfig
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringAppSpecification :: SageMakerMonitoringScheduleMonitoringAppSpecification
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringInputs :: SageMakerMonitoringScheduleMonitoringInputs
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringOutputConfig :: SageMakerMonitoringScheduleMonitoringOutputConfig
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringResources :: SageMakerMonitoringScheduleMonitoringResources
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionNetworkConfig :: Maybe SageMakerMonitoringScheduleNetworkConfig
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionRoleArn :: Val Text
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionStoppingCondition :: Maybe SageMakerMonitoringScheduleStoppingCondition
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleMonitoringJobDefinition where
+  toJSON SageMakerMonitoringScheduleMonitoringJobDefinition{..} =
+    object $
+    catMaybes
+    [ fmap (("BaselineConfig",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionBaselineConfig
+    , (Just . ("MonitoringAppSpecification",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringAppSpecification
+    , (Just . ("MonitoringInputs",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringInputs
+    , (Just . ("MonitoringOutputConfig",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringOutputConfig
+    , (Just . ("MonitoringResources",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringResources
+    , fmap (("NetworkConfig",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionNetworkConfig
+    , (Just . ("RoleArn",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionRoleArn
+    , fmap (("StoppingCondition",) . toJSON) _sageMakerMonitoringScheduleMonitoringJobDefinitionStoppingCondition
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleMonitoringJobDefinition'
+-- containing required fields as arguments.
+sageMakerMonitoringScheduleMonitoringJobDefinition
+  :: SageMakerMonitoringScheduleMonitoringAppSpecification -- ^ 'smmsmjdMonitoringAppSpecification'
+  -> SageMakerMonitoringScheduleMonitoringInputs -- ^ 'smmsmjdMonitoringInputs'
+  -> SageMakerMonitoringScheduleMonitoringOutputConfig -- ^ 'smmsmjdMonitoringOutputConfig'
+  -> SageMakerMonitoringScheduleMonitoringResources -- ^ 'smmsmjdMonitoringResources'
+  -> Val Text -- ^ 'smmsmjdRoleArn'
+  -> SageMakerMonitoringScheduleMonitoringJobDefinition
+sageMakerMonitoringScheduleMonitoringJobDefinition monitoringAppSpecificationarg monitoringInputsarg monitoringOutputConfigarg monitoringResourcesarg roleArnarg =
+  SageMakerMonitoringScheduleMonitoringJobDefinition
+  { _sageMakerMonitoringScheduleMonitoringJobDefinitionBaselineConfig = Nothing
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringAppSpecification = monitoringAppSpecificationarg
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringInputs = monitoringInputsarg
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringOutputConfig = monitoringOutputConfigarg
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringResources = monitoringResourcesarg
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionNetworkConfig = Nothing
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionRoleArn = roleArnarg
+  , _sageMakerMonitoringScheduleMonitoringJobDefinitionStoppingCondition = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-baselineconfig
+smmsmjdBaselineConfig :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition (Maybe SageMakerMonitoringScheduleBaselineConfig)
+smmsmjdBaselineConfig = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionBaselineConfig (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionBaselineConfig = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringappspecification
+smmsmjdMonitoringAppSpecification :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition SageMakerMonitoringScheduleMonitoringAppSpecification
+smmsmjdMonitoringAppSpecification = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringAppSpecification (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringAppSpecification = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringinputs
+smmsmjdMonitoringInputs :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition SageMakerMonitoringScheduleMonitoringInputs
+smmsmjdMonitoringInputs = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringInputs (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringInputs = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringoutputconfig
+smmsmjdMonitoringOutputConfig :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition SageMakerMonitoringScheduleMonitoringOutputConfig
+smmsmjdMonitoringOutputConfig = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringOutputConfig (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringOutputConfig = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-monitoringresources
+smmsmjdMonitoringResources :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition SageMakerMonitoringScheduleMonitoringResources
+smmsmjdMonitoringResources = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringResources (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionMonitoringResources = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-networkconfig
+smmsmjdNetworkConfig :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition (Maybe SageMakerMonitoringScheduleNetworkConfig)
+smmsmjdNetworkConfig = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionNetworkConfig (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionNetworkConfig = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-rolearn
+smmsmjdRoleArn :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition (Val Text)
+smmsmjdRoleArn = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionRoleArn (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionRoleArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringjobdefinition.html#cfn-sagemaker-monitoringschedule-monitoringjobdefinition-stoppingcondition
+smmsmjdStoppingCondition :: Lens' SageMakerMonitoringScheduleMonitoringJobDefinition (Maybe SageMakerMonitoringScheduleStoppingCondition)
+smmsmjdStoppingCondition = lens _sageMakerMonitoringScheduleMonitoringJobDefinitionStoppingCondition (\s a -> s { _sageMakerMonitoringScheduleMonitoringJobDefinitionStoppingCondition = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringOutput.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringOutput.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringOutput.hs
@@ -0,0 +1,41 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringoutput.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringOutput where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleS3Output
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleMonitoringOutput. See
+-- 'sageMakerMonitoringScheduleMonitoringOutput' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleMonitoringOutput =
+  SageMakerMonitoringScheduleMonitoringOutput
+  { _sageMakerMonitoringScheduleMonitoringOutputS3Output :: SageMakerMonitoringScheduleS3Output
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleMonitoringOutput where
+  toJSON SageMakerMonitoringScheduleMonitoringOutput{..} =
+    object $
+    catMaybes
+    [ (Just . ("S3Output",) . toJSON) _sageMakerMonitoringScheduleMonitoringOutputS3Output
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleMonitoringOutput' containing
+-- required fields as arguments.
+sageMakerMonitoringScheduleMonitoringOutput
+  :: SageMakerMonitoringScheduleS3Output -- ^ 'smmsmoS3Output'
+  -> SageMakerMonitoringScheduleMonitoringOutput
+sageMakerMonitoringScheduleMonitoringOutput s3Outputarg =
+  SageMakerMonitoringScheduleMonitoringOutput
+  { _sageMakerMonitoringScheduleMonitoringOutputS3Output = s3Outputarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringoutput.html#cfn-sagemaker-monitoringschedule-monitoringoutput-s3output
+smmsmoS3Output :: Lens' SageMakerMonitoringScheduleMonitoringOutput SageMakerMonitoringScheduleS3Output
+smmsmoS3Output = lens _sageMakerMonitoringScheduleMonitoringOutputS3Output (\s a -> s { _sageMakerMonitoringScheduleMonitoringOutputS3Output = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringOutputConfig.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringOutputConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringOutputConfig.hs
@@ -0,0 +1,48 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringoutputconfig.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringOutputConfig where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringOutput
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleMonitoringOutputConfig. See
+-- 'sageMakerMonitoringScheduleMonitoringOutputConfig' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleMonitoringOutputConfig =
+  SageMakerMonitoringScheduleMonitoringOutputConfig
+  { _sageMakerMonitoringScheduleMonitoringOutputConfigKmsKeyId :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleMonitoringOutputConfigMonitoringOutputs :: [SageMakerMonitoringScheduleMonitoringOutput]
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleMonitoringOutputConfig where
+  toJSON SageMakerMonitoringScheduleMonitoringOutputConfig{..} =
+    object $
+    catMaybes
+    [ fmap (("KmsKeyId",) . toJSON) _sageMakerMonitoringScheduleMonitoringOutputConfigKmsKeyId
+    , (Just . ("MonitoringOutputs",) . toJSON) _sageMakerMonitoringScheduleMonitoringOutputConfigMonitoringOutputs
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleMonitoringOutputConfig'
+-- containing required fields as arguments.
+sageMakerMonitoringScheduleMonitoringOutputConfig
+  :: [SageMakerMonitoringScheduleMonitoringOutput] -- ^ 'smmsmocMonitoringOutputs'
+  -> SageMakerMonitoringScheduleMonitoringOutputConfig
+sageMakerMonitoringScheduleMonitoringOutputConfig monitoringOutputsarg =
+  SageMakerMonitoringScheduleMonitoringOutputConfig
+  { _sageMakerMonitoringScheduleMonitoringOutputConfigKmsKeyId = Nothing
+  , _sageMakerMonitoringScheduleMonitoringOutputConfigMonitoringOutputs = monitoringOutputsarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringoutputconfig.html#cfn-sagemaker-monitoringschedule-monitoringoutputconfig-kmskeyid
+smmsmocKmsKeyId :: Lens' SageMakerMonitoringScheduleMonitoringOutputConfig (Maybe (Val Text))
+smmsmocKmsKeyId = lens _sageMakerMonitoringScheduleMonitoringOutputConfigKmsKeyId (\s a -> s { _sageMakerMonitoringScheduleMonitoringOutputConfigKmsKeyId = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringoutputconfig.html#cfn-sagemaker-monitoringschedule-monitoringoutputconfig-monitoringoutputs
+smmsmocMonitoringOutputs :: Lens' SageMakerMonitoringScheduleMonitoringOutputConfig [SageMakerMonitoringScheduleMonitoringOutput]
+smmsmocMonitoringOutputs = lens _sageMakerMonitoringScheduleMonitoringOutputConfigMonitoringOutputs (\s a -> s { _sageMakerMonitoringScheduleMonitoringOutputConfigMonitoringOutputs = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringResources.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringResources.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringResources.hs
@@ -0,0 +1,41 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringresources.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringResources where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleClusterConfig
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleMonitoringResources. See
+-- 'sageMakerMonitoringScheduleMonitoringResources' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleMonitoringResources =
+  SageMakerMonitoringScheduleMonitoringResources
+  { _sageMakerMonitoringScheduleMonitoringResourcesClusterConfig :: SageMakerMonitoringScheduleClusterConfig
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleMonitoringResources where
+  toJSON SageMakerMonitoringScheduleMonitoringResources{..} =
+    object $
+    catMaybes
+    [ (Just . ("ClusterConfig",) . toJSON) _sageMakerMonitoringScheduleMonitoringResourcesClusterConfig
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleMonitoringResources'
+-- containing required fields as arguments.
+sageMakerMonitoringScheduleMonitoringResources
+  :: SageMakerMonitoringScheduleClusterConfig -- ^ 'smmsmrClusterConfig'
+  -> SageMakerMonitoringScheduleMonitoringResources
+sageMakerMonitoringScheduleMonitoringResources clusterConfigarg =
+  SageMakerMonitoringScheduleMonitoringResources
+  { _sageMakerMonitoringScheduleMonitoringResourcesClusterConfig = clusterConfigarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringresources.html#cfn-sagemaker-monitoringschedule-monitoringresources-clusterconfig
+smmsmrClusterConfig :: Lens' SageMakerMonitoringScheduleMonitoringResources SageMakerMonitoringScheduleClusterConfig
+smmsmrClusterConfig = lens _sageMakerMonitoringScheduleMonitoringResourcesClusterConfig (\s a -> s { _sageMakerMonitoringScheduleMonitoringResourcesClusterConfig = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringScheduleConfig.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringScheduleConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleMonitoringScheduleConfig.hs
@@ -0,0 +1,49 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringscheduleconfig.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringScheduleConfig where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringJobDefinition
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleScheduleConfig
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleMonitoringScheduleConfig. See
+-- 'sageMakerMonitoringScheduleMonitoringScheduleConfig' for a more
+-- convenient constructor.
+data SageMakerMonitoringScheduleMonitoringScheduleConfig =
+  SageMakerMonitoringScheduleMonitoringScheduleConfig
+  { _sageMakerMonitoringScheduleMonitoringScheduleConfigMonitoringJobDefinition :: SageMakerMonitoringScheduleMonitoringJobDefinition
+  , _sageMakerMonitoringScheduleMonitoringScheduleConfigScheduleConfig :: Maybe SageMakerMonitoringScheduleScheduleConfig
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleMonitoringScheduleConfig where
+  toJSON SageMakerMonitoringScheduleMonitoringScheduleConfig{..} =
+    object $
+    catMaybes
+    [ (Just . ("MonitoringJobDefinition",) . toJSON) _sageMakerMonitoringScheduleMonitoringScheduleConfigMonitoringJobDefinition
+    , fmap (("ScheduleConfig",) . toJSON) _sageMakerMonitoringScheduleMonitoringScheduleConfigScheduleConfig
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleMonitoringScheduleConfig'
+-- containing required fields as arguments.
+sageMakerMonitoringScheduleMonitoringScheduleConfig
+  :: SageMakerMonitoringScheduleMonitoringJobDefinition -- ^ 'smmsmscMonitoringJobDefinition'
+  -> SageMakerMonitoringScheduleMonitoringScheduleConfig
+sageMakerMonitoringScheduleMonitoringScheduleConfig monitoringJobDefinitionarg =
+  SageMakerMonitoringScheduleMonitoringScheduleConfig
+  { _sageMakerMonitoringScheduleMonitoringScheduleConfigMonitoringJobDefinition = monitoringJobDefinitionarg
+  , _sageMakerMonitoringScheduleMonitoringScheduleConfigScheduleConfig = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringscheduleconfig.html#cfn-sagemaker-monitoringschedule-monitoringscheduleconfig-monitoringjobdefinition
+smmsmscMonitoringJobDefinition :: Lens' SageMakerMonitoringScheduleMonitoringScheduleConfig SageMakerMonitoringScheduleMonitoringJobDefinition
+smmsmscMonitoringJobDefinition = lens _sageMakerMonitoringScheduleMonitoringScheduleConfigMonitoringJobDefinition (\s a -> s { _sageMakerMonitoringScheduleMonitoringScheduleConfigMonitoringJobDefinition = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-monitoringscheduleconfig.html#cfn-sagemaker-monitoringschedule-monitoringscheduleconfig-scheduleconfig
+smmsmscScheduleConfig :: Lens' SageMakerMonitoringScheduleMonitoringScheduleConfig (Maybe SageMakerMonitoringScheduleScheduleConfig)
+smmsmscScheduleConfig = lens _sageMakerMonitoringScheduleMonitoringScheduleConfigScheduleConfig (\s a -> s { _sageMakerMonitoringScheduleMonitoringScheduleConfigScheduleConfig = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleNetworkConfig.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleNetworkConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleNetworkConfig.hs
@@ -0,0 +1,53 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-networkconfig.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleNetworkConfig where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleVpcConfig
+
+-- | Full data type definition for SageMakerMonitoringScheduleNetworkConfig.
+-- See 'sageMakerMonitoringScheduleNetworkConfig' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleNetworkConfig =
+  SageMakerMonitoringScheduleNetworkConfig
+  { _sageMakerMonitoringScheduleNetworkConfigEnableInterContainerTrafficEncryption :: Maybe (Val Bool)
+  , _sageMakerMonitoringScheduleNetworkConfigEnableNetworkIsolation :: Maybe (Val Bool)
+  , _sageMakerMonitoringScheduleNetworkConfigVpcConfig :: Maybe SageMakerMonitoringScheduleVpcConfig
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleNetworkConfig where
+  toJSON SageMakerMonitoringScheduleNetworkConfig{..} =
+    object $
+    catMaybes
+    [ fmap (("EnableInterContainerTrafficEncryption",) . toJSON) _sageMakerMonitoringScheduleNetworkConfigEnableInterContainerTrafficEncryption
+    , fmap (("EnableNetworkIsolation",) . toJSON) _sageMakerMonitoringScheduleNetworkConfigEnableNetworkIsolation
+    , fmap (("VpcConfig",) . toJSON) _sageMakerMonitoringScheduleNetworkConfigVpcConfig
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleNetworkConfig' containing
+-- required fields as arguments.
+sageMakerMonitoringScheduleNetworkConfig
+  :: SageMakerMonitoringScheduleNetworkConfig
+sageMakerMonitoringScheduleNetworkConfig  =
+  SageMakerMonitoringScheduleNetworkConfig
+  { _sageMakerMonitoringScheduleNetworkConfigEnableInterContainerTrafficEncryption = Nothing
+  , _sageMakerMonitoringScheduleNetworkConfigEnableNetworkIsolation = Nothing
+  , _sageMakerMonitoringScheduleNetworkConfigVpcConfig = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-networkconfig.html#cfn-sagemaker-monitoringschedule-networkconfig-enableintercontainertrafficencryption
+smmsncEnableInterContainerTrafficEncryption :: Lens' SageMakerMonitoringScheduleNetworkConfig (Maybe (Val Bool))
+smmsncEnableInterContainerTrafficEncryption = lens _sageMakerMonitoringScheduleNetworkConfigEnableInterContainerTrafficEncryption (\s a -> s { _sageMakerMonitoringScheduleNetworkConfigEnableInterContainerTrafficEncryption = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-networkconfig.html#cfn-sagemaker-monitoringschedule-networkconfig-enablenetworkisolation
+smmsncEnableNetworkIsolation :: Lens' SageMakerMonitoringScheduleNetworkConfig (Maybe (Val Bool))
+smmsncEnableNetworkIsolation = lens _sageMakerMonitoringScheduleNetworkConfigEnableNetworkIsolation (\s a -> s { _sageMakerMonitoringScheduleNetworkConfigEnableNetworkIsolation = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-networkconfig.html#cfn-sagemaker-monitoringschedule-networkconfig-vpcconfig
+smmsncVpcConfig :: Lens' SageMakerMonitoringScheduleNetworkConfig (Maybe SageMakerMonitoringScheduleVpcConfig)
+smmsncVpcConfig = lens _sageMakerMonitoringScheduleNetworkConfigVpcConfig (\s a -> s { _sageMakerMonitoringScheduleNetworkConfigVpcConfig = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleS3Output.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleS3Output.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleS3Output.hs
@@ -0,0 +1,54 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-s3output.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleS3Output where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for SageMakerMonitoringScheduleS3Output. See
+-- 'sageMakerMonitoringScheduleS3Output' for a more convenient constructor.
+data SageMakerMonitoringScheduleS3Output =
+  SageMakerMonitoringScheduleS3Output
+  { _sageMakerMonitoringScheduleS3OutputLocalPath :: Val Text
+  , _sageMakerMonitoringScheduleS3OutputS3UploadMode :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleS3OutputS3Uri :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleS3Output where
+  toJSON SageMakerMonitoringScheduleS3Output{..} =
+    object $
+    catMaybes
+    [ (Just . ("LocalPath",) . toJSON) _sageMakerMonitoringScheduleS3OutputLocalPath
+    , fmap (("S3UploadMode",) . toJSON) _sageMakerMonitoringScheduleS3OutputS3UploadMode
+    , (Just . ("S3Uri",) . toJSON) _sageMakerMonitoringScheduleS3OutputS3Uri
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleS3Output' containing required
+-- fields as arguments.
+sageMakerMonitoringScheduleS3Output
+  :: Val Text -- ^ 'smmssoLocalPath'
+  -> Val Text -- ^ 'smmssoS3Uri'
+  -> SageMakerMonitoringScheduleS3Output
+sageMakerMonitoringScheduleS3Output localPatharg s3Uriarg =
+  SageMakerMonitoringScheduleS3Output
+  { _sageMakerMonitoringScheduleS3OutputLocalPath = localPatharg
+  , _sageMakerMonitoringScheduleS3OutputS3UploadMode = Nothing
+  , _sageMakerMonitoringScheduleS3OutputS3Uri = s3Uriarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-s3output.html#cfn-sagemaker-monitoringschedule-s3output-localpath
+smmssoLocalPath :: Lens' SageMakerMonitoringScheduleS3Output (Val Text)
+smmssoLocalPath = lens _sageMakerMonitoringScheduleS3OutputLocalPath (\s a -> s { _sageMakerMonitoringScheduleS3OutputLocalPath = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-s3output.html#cfn-sagemaker-monitoringschedule-s3output-s3uploadmode
+smmssoS3UploadMode :: Lens' SageMakerMonitoringScheduleS3Output (Maybe (Val Text))
+smmssoS3UploadMode = lens _sageMakerMonitoringScheduleS3OutputS3UploadMode (\s a -> s { _sageMakerMonitoringScheduleS3OutputS3UploadMode = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-s3output.html#cfn-sagemaker-monitoringschedule-s3output-s3uri
+smmssoS3Uri :: Lens' SageMakerMonitoringScheduleS3Output (Val Text)
+smmssoS3Uri = lens _sageMakerMonitoringScheduleS3OutputS3Uri (\s a -> s { _sageMakerMonitoringScheduleS3OutputS3Uri = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleScheduleConfig.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleScheduleConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleScheduleConfig.hs
@@ -0,0 +1,40 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-scheduleconfig.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleScheduleConfig where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for SageMakerMonitoringScheduleScheduleConfig.
+-- See 'sageMakerMonitoringScheduleScheduleConfig' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleScheduleConfig =
+  SageMakerMonitoringScheduleScheduleConfig
+  { _sageMakerMonitoringScheduleScheduleConfigScheduleExpression :: Val Text
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleScheduleConfig where
+  toJSON SageMakerMonitoringScheduleScheduleConfig{..} =
+    object $
+    catMaybes
+    [ (Just . ("ScheduleExpression",) . toJSON) _sageMakerMonitoringScheduleScheduleConfigScheduleExpression
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleScheduleConfig' containing
+-- required fields as arguments.
+sageMakerMonitoringScheduleScheduleConfig
+  :: Val Text -- ^ 'smmsscScheduleExpression'
+  -> SageMakerMonitoringScheduleScheduleConfig
+sageMakerMonitoringScheduleScheduleConfig scheduleExpressionarg =
+  SageMakerMonitoringScheduleScheduleConfig
+  { _sageMakerMonitoringScheduleScheduleConfigScheduleExpression = scheduleExpressionarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-scheduleconfig.html#cfn-sagemaker-monitoringschedule-scheduleconfig-scheduleexpression
+smmsscScheduleExpression :: Lens' SageMakerMonitoringScheduleScheduleConfig (Val Text)
+smmsscScheduleExpression = lens _sageMakerMonitoringScheduleScheduleConfigScheduleExpression (\s a -> s { _sageMakerMonitoringScheduleScheduleConfigScheduleExpression = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleStatisticsResource.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleStatisticsResource.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleStatisticsResource.hs
@@ -0,0 +1,40 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-statisticsresource.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleStatisticsResource where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleStatisticsResource. See
+-- 'sageMakerMonitoringScheduleStatisticsResource' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleStatisticsResource =
+  SageMakerMonitoringScheduleStatisticsResource
+  { _sageMakerMonitoringScheduleStatisticsResourceS3Uri :: Maybe (Val Text)
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleStatisticsResource where
+  toJSON SageMakerMonitoringScheduleStatisticsResource{..} =
+    object $
+    catMaybes
+    [ fmap (("S3Uri",) . toJSON) _sageMakerMonitoringScheduleStatisticsResourceS3Uri
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleStatisticsResource'
+-- containing required fields as arguments.
+sageMakerMonitoringScheduleStatisticsResource
+  :: SageMakerMonitoringScheduleStatisticsResource
+sageMakerMonitoringScheduleStatisticsResource  =
+  SageMakerMonitoringScheduleStatisticsResource
+  { _sageMakerMonitoringScheduleStatisticsResourceS3Uri = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-statisticsresource.html#cfn-sagemaker-monitoringschedule-statisticsresource-s3uri
+smmssrS3Uri :: Lens' SageMakerMonitoringScheduleStatisticsResource (Maybe (Val Text))
+smmssrS3Uri = lens _sageMakerMonitoringScheduleStatisticsResourceS3Uri (\s a -> s { _sageMakerMonitoringScheduleStatisticsResourceS3Uri = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleStoppingCondition.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleStoppingCondition.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleStoppingCondition.hs
@@ -0,0 +1,41 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-stoppingcondition.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleStoppingCondition where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for
+-- SageMakerMonitoringScheduleStoppingCondition. See
+-- 'sageMakerMonitoringScheduleStoppingCondition' for a more convenient
+-- constructor.
+data SageMakerMonitoringScheduleStoppingCondition =
+  SageMakerMonitoringScheduleStoppingCondition
+  { _sageMakerMonitoringScheduleStoppingConditionMaxRuntimeInSeconds :: Val Integer
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleStoppingCondition where
+  toJSON SageMakerMonitoringScheduleStoppingCondition{..} =
+    object $
+    catMaybes
+    [ (Just . ("MaxRuntimeInSeconds",) . toJSON) _sageMakerMonitoringScheduleStoppingConditionMaxRuntimeInSeconds
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleStoppingCondition' containing
+-- required fields as arguments.
+sageMakerMonitoringScheduleStoppingCondition
+  :: Val Integer -- ^ 'smmsscMaxRuntimeInSeconds'
+  -> SageMakerMonitoringScheduleStoppingCondition
+sageMakerMonitoringScheduleStoppingCondition maxRuntimeInSecondsarg =
+  SageMakerMonitoringScheduleStoppingCondition
+  { _sageMakerMonitoringScheduleStoppingConditionMaxRuntimeInSeconds = maxRuntimeInSecondsarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-stoppingcondition.html#cfn-sagemaker-monitoringschedule-stoppingcondition-maxruntimeinseconds
+smmsscMaxRuntimeInSeconds :: Lens' SageMakerMonitoringScheduleStoppingCondition (Val Integer)
+smmsscMaxRuntimeInSeconds = lens _sageMakerMonitoringScheduleStoppingConditionMaxRuntimeInSeconds (\s a -> s { _sageMakerMonitoringScheduleStoppingConditionMaxRuntimeInSeconds = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleVpcConfig.hs b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleVpcConfig.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/ResourceProperties/SageMakerMonitoringScheduleVpcConfig.hs
@@ -0,0 +1,47 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-vpcconfig.html
+
+module Stratosphere.ResourceProperties.SageMakerMonitoringScheduleVpcConfig where
+
+import Stratosphere.ResourceImports
+
+
+-- | Full data type definition for SageMakerMonitoringScheduleVpcConfig. See
+-- 'sageMakerMonitoringScheduleVpcConfig' for a more convenient constructor.
+data SageMakerMonitoringScheduleVpcConfig =
+  SageMakerMonitoringScheduleVpcConfig
+  { _sageMakerMonitoringScheduleVpcConfigSecurityGroupIds :: ValList Text
+  , _sageMakerMonitoringScheduleVpcConfigSubnets :: ValList Text
+  } deriving (Show, Eq)
+
+instance ToJSON SageMakerMonitoringScheduleVpcConfig where
+  toJSON SageMakerMonitoringScheduleVpcConfig{..} =
+    object $
+    catMaybes
+    [ (Just . ("SecurityGroupIds",) . toJSON) _sageMakerMonitoringScheduleVpcConfigSecurityGroupIds
+    , (Just . ("Subnets",) . toJSON) _sageMakerMonitoringScheduleVpcConfigSubnets
+    ]
+
+-- | Constructor for 'SageMakerMonitoringScheduleVpcConfig' containing
+-- required fields as arguments.
+sageMakerMonitoringScheduleVpcConfig
+  :: ValList Text -- ^ 'smmsvcSecurityGroupIds'
+  -> ValList Text -- ^ 'smmsvcSubnets'
+  -> SageMakerMonitoringScheduleVpcConfig
+sageMakerMonitoringScheduleVpcConfig securityGroupIdsarg subnetsarg =
+  SageMakerMonitoringScheduleVpcConfig
+  { _sageMakerMonitoringScheduleVpcConfigSecurityGroupIds = securityGroupIdsarg
+  , _sageMakerMonitoringScheduleVpcConfigSubnets = subnetsarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-vpcconfig.html#cfn-sagemaker-monitoringschedule-vpcconfig-securitygroupids
+smmsvcSecurityGroupIds :: Lens' SageMakerMonitoringScheduleVpcConfig (ValList Text)
+smmsvcSecurityGroupIds = lens _sageMakerMonitoringScheduleVpcConfigSecurityGroupIds (\s a -> s { _sageMakerMonitoringScheduleVpcConfigSecurityGroupIds = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-monitoringschedule-vpcconfig.html#cfn-sagemaker-monitoringschedule-vpcconfig-subnets
+smmsvcSubnets :: Lens' SageMakerMonitoringScheduleVpcConfig (ValList Text)
+smmsvcSubnets = lens _sageMakerMonitoringScheduleVpcConfigSubnets (\s a -> s { _sageMakerMonitoringScheduleVpcConfigSubnets = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineCloudWatchLogsLogGroup.hs b/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineCloudWatchLogsLogGroup.hs
--- a/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineCloudWatchLogsLogGroup.hs
+++ b/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineCloudWatchLogsLogGroup.hs
@@ -3,7 +3,7 @@
 {-# LANGUAGE StrictData #-}
 {-# LANGUAGE TupleSections #-}
 
--- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-logdestination-cloudwatchlogsloggroup.html
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-cloudwatchlogsloggroup.html
 
 module Stratosphere.ResourceProperties.StepFunctionsStateMachineCloudWatchLogsLogGroup where
 
@@ -16,26 +16,25 @@
 -- constructor.
 data StepFunctionsStateMachineCloudWatchLogsLogGroup =
   StepFunctionsStateMachineCloudWatchLogsLogGroup
-  { _stepFunctionsStateMachineCloudWatchLogsLogGroupLogGroupArn :: Val Text
+  { _stepFunctionsStateMachineCloudWatchLogsLogGroupLogGroupArn :: Maybe (Val Text)
   } deriving (Show, Eq)
 
 instance ToJSON StepFunctionsStateMachineCloudWatchLogsLogGroup where
   toJSON StepFunctionsStateMachineCloudWatchLogsLogGroup{..} =
     object $
     catMaybes
-    [ (Just . ("LogGroupArn",) . toJSON) _stepFunctionsStateMachineCloudWatchLogsLogGroupLogGroupArn
+    [ fmap (("LogGroupArn",) . toJSON) _stepFunctionsStateMachineCloudWatchLogsLogGroupLogGroupArn
     ]
 
 -- | Constructor for 'StepFunctionsStateMachineCloudWatchLogsLogGroup'
 -- containing required fields as arguments.
 stepFunctionsStateMachineCloudWatchLogsLogGroup
-  :: Val Text -- ^ 'sfsmcwllgLogGroupArn'
-  -> StepFunctionsStateMachineCloudWatchLogsLogGroup
-stepFunctionsStateMachineCloudWatchLogsLogGroup logGroupArnarg =
+  :: StepFunctionsStateMachineCloudWatchLogsLogGroup
+stepFunctionsStateMachineCloudWatchLogsLogGroup  =
   StepFunctionsStateMachineCloudWatchLogsLogGroup
-  { _stepFunctionsStateMachineCloudWatchLogsLogGroupLogGroupArn = logGroupArnarg
+  { _stepFunctionsStateMachineCloudWatchLogsLogGroupLogGroupArn = Nothing
   }
 
--- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-logdestination-cloudwatchlogsloggroup.html#cfn-stepfunctions-statemachine-logdestination-cloudwatchlogsloggroup-loggrouparn
-sfsmcwllgLogGroupArn :: Lens' StepFunctionsStateMachineCloudWatchLogsLogGroup (Val Text)
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-cloudwatchlogsloggroup.html#cfn-stepfunctions-statemachine-cloudwatchlogsloggroup-loggrouparn
+sfsmcwllgLogGroupArn :: Lens' StepFunctionsStateMachineCloudWatchLogsLogGroup (Maybe (Val Text))
 sfsmcwllgLogGroupArn = lens _stepFunctionsStateMachineCloudWatchLogsLogGroupLogGroupArn (\s a -> s { _stepFunctionsStateMachineCloudWatchLogsLogGroupLogGroupArn = a })
diff --git a/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineTracingConfiguration.hs b/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineTracingConfiguration.hs
--- a/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineTracingConfiguration.hs
+++ b/library-gen/Stratosphere/ResourceProperties/StepFunctionsStateMachineTracingConfiguration.hs
@@ -16,26 +16,25 @@
 -- constructor.
 data StepFunctionsStateMachineTracingConfiguration =
   StepFunctionsStateMachineTracingConfiguration
-  { _stepFunctionsStateMachineTracingConfigurationEnabled :: Val Bool
+  { _stepFunctionsStateMachineTracingConfigurationEnabled :: Maybe (Val Bool)
   } deriving (Show, Eq)
 
 instance ToJSON StepFunctionsStateMachineTracingConfiguration where
   toJSON StepFunctionsStateMachineTracingConfiguration{..} =
     object $
     catMaybes
-    [ (Just . ("Enabled",) . toJSON) _stepFunctionsStateMachineTracingConfigurationEnabled
+    [ fmap (("Enabled",) . toJSON) _stepFunctionsStateMachineTracingConfigurationEnabled
     ]
 
 -- | Constructor for 'StepFunctionsStateMachineTracingConfiguration'
 -- containing required fields as arguments.
 stepFunctionsStateMachineTracingConfiguration
-  :: Val Bool -- ^ 'sfsmtcEnabled'
-  -> StepFunctionsStateMachineTracingConfiguration
-stepFunctionsStateMachineTracingConfiguration enabledarg =
+  :: StepFunctionsStateMachineTracingConfiguration
+stepFunctionsStateMachineTracingConfiguration  =
   StepFunctionsStateMachineTracingConfiguration
-  { _stepFunctionsStateMachineTracingConfigurationEnabled = enabledarg
+  { _stepFunctionsStateMachineTracingConfigurationEnabled = Nothing
   }
 
 -- | 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' StepFunctionsStateMachineTracingConfiguration (Maybe (Val Bool))
 sfsmtcEnabled = lens _stepFunctionsStateMachineTracingConfigurationEnabled (\s a -> s { _stepFunctionsStateMachineTracingConfigurationEnabled = a })
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
@@ -115,6 +115,7 @@
 import Stratosphere.Resources.AppSyncResolver as X
 import Stratosphere.Resources.ApplicationAutoScalingScalableTarget as X
 import Stratosphere.Resources.ApplicationAutoScalingScalingPolicy as X
+import Stratosphere.Resources.ApplicationInsightsApplication as X
 import Stratosphere.Resources.AthenaDataCatalog as X
 import Stratosphere.Resources.AthenaNamedQuery as X
 import Stratosphere.Resources.AthenaWorkGroup as X
@@ -207,6 +208,7 @@
 import Stratosphere.Resources.DocDBDBSubnetGroup as X
 import Stratosphere.Resources.DynamoDBTable as X
 import Stratosphere.Resources.EC2CapacityReservation as X
+import Stratosphere.Resources.EC2CarrierGateway as X
 import Stratosphere.Resources.EC2ClientVpnAuthorizationRule as X
 import Stratosphere.Resources.EC2ClientVpnEndpoint as X
 import Stratosphere.Resources.EC2ClientVpnRoute as X
@@ -535,6 +537,7 @@
 import Stratosphere.Resources.SageMakerEndpoint as X
 import Stratosphere.Resources.SageMakerEndpointConfig as X
 import Stratosphere.Resources.SageMakerModel as X
+import Stratosphere.Resources.SageMakerMonitoringSchedule as X
 import Stratosphere.Resources.SageMakerNotebookInstance as X
 import Stratosphere.Resources.SageMakerNotebookInstanceLifecycleConfig as X
 import Stratosphere.Resources.SageMakerWorkteam as X
@@ -781,6 +784,18 @@
 import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepAdjustment as X
 import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration as X
 import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyTargetTrackingScalingPolicyConfiguration as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationAlarm as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationAlarmMetric as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationComponentConfiguration as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationComponentMonitoringSetting as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationConfigurationDetails as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationCustomComponent as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationLog as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationLogPattern as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationLogPatternSet as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationSubComponentConfigurationDetails as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationSubComponentTypeConfiguration as X
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationWindowsEvent as X
 import Stratosphere.ResourceProperties.AthenaDataCatalogTags as X
 import Stratosphere.ResourceProperties.AthenaWorkGroupEncryptionConfiguration as X
 import Stratosphere.ResourceProperties.AthenaWorkGroupResultConfiguration as X
@@ -1031,6 +1046,7 @@
 import Stratosphere.ResourceProperties.DynamoDBTableStreamSpecification as X
 import Stratosphere.ResourceProperties.DynamoDBTableTimeToLiveSpecification as X
 import Stratosphere.ResourceProperties.EC2CapacityReservationTagSpecification as X
+import Stratosphere.ResourceProperties.EC2CarrierGatewayTags as X
 import Stratosphere.ResourceProperties.EC2ClientVpnEndpointCertificateAuthenticationRequest as X
 import Stratosphere.ResourceProperties.EC2ClientVpnEndpointClientAuthenticationRequest as X
 import Stratosphere.ResourceProperties.EC2ClientVpnEndpointConnectionLogOptions as X
@@ -1113,7 +1129,6 @@
 import Stratosphere.ResourceProperties.EC2SpotFleetTargetGroupsConfig as X
 import Stratosphere.ResourceProperties.EC2TrafficMirrorFilterRuleTrafficMirrorPortRange as X
 import Stratosphere.ResourceProperties.EC2VPNConnectionVpnTunnelOptionsSpecification as X
-import Stratosphere.ResourceProperties.ECRRepositoryLifecyclePolicy as X
 import Stratosphere.ResourceProperties.ECSCapacityProviderAutoScalingGroupProvider as X
 import Stratosphere.ResourceProperties.ECSCapacityProviderManagedScaling as X
 import Stratosphere.ResourceProperties.ECSClusterCapacityProviderStrategyItem as X
@@ -1126,10 +1141,13 @@
 import Stratosphere.ResourceProperties.ECSServicePlacementConstraint as X
 import Stratosphere.ResourceProperties.ECSServicePlacementStrategy as X
 import Stratosphere.ResourceProperties.ECSServiceServiceRegistry as X
+import Stratosphere.ResourceProperties.ECSTaskDefinitionAuthorizationConfig as X
 import Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDefinition as X
 import Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDependency as X
 import Stratosphere.ResourceProperties.ECSTaskDefinitionDevice as X
 import Stratosphere.ResourceProperties.ECSTaskDefinitionDockerVolumeConfiguration as X
+import Stratosphere.ResourceProperties.ECSTaskDefinitionEFSVolumeConfiguration as X
+import Stratosphere.ResourceProperties.ECSTaskDefinitionEnvironmentFile as X
 import Stratosphere.ResourceProperties.ECSTaskDefinitionFirelensConfiguration as X
 import Stratosphere.ResourceProperties.ECSTaskDefinitionHealthCheck as X
 import Stratosphere.ResourceProperties.ECSTaskDefinitionHostEntry as X
@@ -1166,6 +1184,7 @@
 import Stratosphere.ResourceProperties.EKSClusterEncryptionConfig as X
 import Stratosphere.ResourceProperties.EKSClusterProvider as X
 import Stratosphere.ResourceProperties.EKSClusterResourcesVpcConfig as X
+import Stratosphere.ResourceProperties.EKSNodegroupLaunchTemplateSpecification as X
 import Stratosphere.ResourceProperties.EKSNodegroupRemoteAccess as X
 import Stratosphere.ResourceProperties.EKSNodegroupScalingConfig as X
 import Stratosphere.ResourceProperties.EMRClusterApplication as X
@@ -1425,6 +1444,7 @@
 import Stratosphere.ResourceProperties.IoT1ClickProjectDeviceTemplate as X
 import Stratosphere.ResourceProperties.IoT1ClickProjectPlacementTemplate as X
 import Stratosphere.ResourceProperties.IoTProvisioningTemplateProvisioningHook as X
+import Stratosphere.ResourceProperties.IoTProvisioningTemplateTags as X
 import Stratosphere.ResourceProperties.IoTThingAttributePayload as X
 import Stratosphere.ResourceProperties.IoTTopicRuleAction as X
 import Stratosphere.ResourceProperties.IoTTopicRuleAssetPropertyTimestamp as X
@@ -1904,6 +1924,25 @@
 import Stratosphere.ResourceProperties.SageMakerEndpointConfigProductionVariant as X
 import Stratosphere.ResourceProperties.SageMakerModelContainerDefinition as X
 import Stratosphere.ResourceProperties.SageMakerModelVpcConfig as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleBaselineConfig as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleClusterConfig as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleConstraintsResource as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleEndpointInput as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringAppSpecification as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringExecutionSummary as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringInput as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringInputs as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringJobDefinition as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringOutput as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringOutputConfig as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringResources as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringScheduleConfig as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleNetworkConfig as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleS3Output as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleScheduleConfig as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleStatisticsResource as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleStoppingCondition as X
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleVpcConfig as X
 import Stratosphere.ResourceProperties.SageMakerNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHook as X
 import Stratosphere.ResourceProperties.SageMakerWorkteamCognitoMemberDefinition as X
 import Stratosphere.ResourceProperties.SageMakerWorkteamMemberDefinition as X
diff --git a/library-gen/Stratosphere/Resources/ApplicationInsightsApplication.hs b/library-gen/Stratosphere/Resources/ApplicationInsightsApplication.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/Resources/ApplicationInsightsApplication.hs
@@ -0,0 +1,101 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html
+
+module Stratosphere.Resources.ApplicationInsightsApplication where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationComponentMonitoringSetting
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationCustomComponent
+import Stratosphere.ResourceProperties.ApplicationInsightsApplicationLogPatternSet
+import Stratosphere.ResourceProperties.Tag
+
+-- | Full data type definition for ApplicationInsightsApplication. See
+-- 'applicationInsightsApplication' for a more convenient constructor.
+data ApplicationInsightsApplication =
+  ApplicationInsightsApplication
+  { _applicationInsightsApplicationAutoConfigurationEnabled :: Maybe (Val Bool)
+  , _applicationInsightsApplicationCWEMonitorEnabled :: Maybe (Val Bool)
+  , _applicationInsightsApplicationComponentMonitoringSettings :: Maybe [ApplicationInsightsApplicationComponentMonitoringSetting]
+  , _applicationInsightsApplicationCustomComponents :: Maybe [ApplicationInsightsApplicationCustomComponent]
+  , _applicationInsightsApplicationLogPatternSets :: Maybe [ApplicationInsightsApplicationLogPatternSet]
+  , _applicationInsightsApplicationOpsCenterEnabled :: Maybe (Val Bool)
+  , _applicationInsightsApplicationOpsItemSNSTopicArn :: Maybe (Val Text)
+  , _applicationInsightsApplicationResourceGroupName :: Val Text
+  , _applicationInsightsApplicationTags :: Maybe [Tag]
+  } deriving (Show, Eq)
+
+instance ToResourceProperties ApplicationInsightsApplication where
+  toResourceProperties ApplicationInsightsApplication{..} =
+    ResourceProperties
+    { resourcePropertiesType = "AWS::ApplicationInsights::Application"
+    , resourcePropertiesProperties =
+        hashMapFromList $ catMaybes
+        [ fmap (("AutoConfigurationEnabled",) . toJSON) _applicationInsightsApplicationAutoConfigurationEnabled
+        , fmap (("CWEMonitorEnabled",) . toJSON) _applicationInsightsApplicationCWEMonitorEnabled
+        , fmap (("ComponentMonitoringSettings",) . toJSON) _applicationInsightsApplicationComponentMonitoringSettings
+        , fmap (("CustomComponents",) . toJSON) _applicationInsightsApplicationCustomComponents
+        , fmap (("LogPatternSets",) . toJSON) _applicationInsightsApplicationLogPatternSets
+        , fmap (("OpsCenterEnabled",) . toJSON) _applicationInsightsApplicationOpsCenterEnabled
+        , fmap (("OpsItemSNSTopicArn",) . toJSON) _applicationInsightsApplicationOpsItemSNSTopicArn
+        , (Just . ("ResourceGroupName",) . toJSON) _applicationInsightsApplicationResourceGroupName
+        , fmap (("Tags",) . toJSON) _applicationInsightsApplicationTags
+        ]
+    }
+
+-- | Constructor for 'ApplicationInsightsApplication' containing required
+-- fields as arguments.
+applicationInsightsApplication
+  :: Val Text -- ^ 'aiaResourceGroupName'
+  -> ApplicationInsightsApplication
+applicationInsightsApplication resourceGroupNamearg =
+  ApplicationInsightsApplication
+  { _applicationInsightsApplicationAutoConfigurationEnabled = Nothing
+  , _applicationInsightsApplicationCWEMonitorEnabled = Nothing
+  , _applicationInsightsApplicationComponentMonitoringSettings = Nothing
+  , _applicationInsightsApplicationCustomComponents = Nothing
+  , _applicationInsightsApplicationLogPatternSets = Nothing
+  , _applicationInsightsApplicationOpsCenterEnabled = Nothing
+  , _applicationInsightsApplicationOpsItemSNSTopicArn = Nothing
+  , _applicationInsightsApplicationResourceGroupName = resourceGroupNamearg
+  , _applicationInsightsApplicationTags = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-autoconfigurationenabled
+aiaAutoConfigurationEnabled :: Lens' ApplicationInsightsApplication (Maybe (Val Bool))
+aiaAutoConfigurationEnabled = lens _applicationInsightsApplicationAutoConfigurationEnabled (\s a -> s { _applicationInsightsApplicationAutoConfigurationEnabled = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-cwemonitorenabled
+aiaCWEMonitorEnabled :: Lens' ApplicationInsightsApplication (Maybe (Val Bool))
+aiaCWEMonitorEnabled = lens _applicationInsightsApplicationCWEMonitorEnabled (\s a -> s { _applicationInsightsApplicationCWEMonitorEnabled = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-componentmonitoringsettings
+aiaComponentMonitoringSettings :: Lens' ApplicationInsightsApplication (Maybe [ApplicationInsightsApplicationComponentMonitoringSetting])
+aiaComponentMonitoringSettings = lens _applicationInsightsApplicationComponentMonitoringSettings (\s a -> s { _applicationInsightsApplicationComponentMonitoringSettings = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-customcomponents
+aiaCustomComponents :: Lens' ApplicationInsightsApplication (Maybe [ApplicationInsightsApplicationCustomComponent])
+aiaCustomComponents = lens _applicationInsightsApplicationCustomComponents (\s a -> s { _applicationInsightsApplicationCustomComponents = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-logpatternsets
+aiaLogPatternSets :: Lens' ApplicationInsightsApplication (Maybe [ApplicationInsightsApplicationLogPatternSet])
+aiaLogPatternSets = lens _applicationInsightsApplicationLogPatternSets (\s a -> s { _applicationInsightsApplicationLogPatternSets = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-opscenterenabled
+aiaOpsCenterEnabled :: Lens' ApplicationInsightsApplication (Maybe (Val Bool))
+aiaOpsCenterEnabled = lens _applicationInsightsApplicationOpsCenterEnabled (\s a -> s { _applicationInsightsApplicationOpsCenterEnabled = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-opsitemsnstopicarn
+aiaOpsItemSNSTopicArn :: Lens' ApplicationInsightsApplication (Maybe (Val Text))
+aiaOpsItemSNSTopicArn = lens _applicationInsightsApplicationOpsItemSNSTopicArn (\s a -> s { _applicationInsightsApplicationOpsItemSNSTopicArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-resourcegroupname
+aiaResourceGroupName :: Lens' ApplicationInsightsApplication (Val Text)
+aiaResourceGroupName = lens _applicationInsightsApplicationResourceGroupName (\s a -> s { _applicationInsightsApplicationResourceGroupName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html#cfn-applicationinsights-application-tags
+aiaTags :: Lens' ApplicationInsightsApplication (Maybe [Tag])
+aiaTags = lens _applicationInsightsApplicationTags (\s a -> s { _applicationInsightsApplicationTags = a })
diff --git a/library-gen/Stratosphere/Resources/EC2CarrierGateway.hs b/library-gen/Stratosphere/Resources/EC2CarrierGateway.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/Resources/EC2CarrierGateway.hs
@@ -0,0 +1,49 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-carriergateway.html
+
+module Stratosphere.Resources.EC2CarrierGateway where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.EC2CarrierGatewayTags
+
+-- | Full data type definition for EC2CarrierGateway. See 'ec2CarrierGateway'
+-- for a more convenient constructor.
+data EC2CarrierGateway =
+  EC2CarrierGateway
+  { _eC2CarrierGatewayTags :: Maybe EC2CarrierGatewayTags
+  , _eC2CarrierGatewayVpcId :: Val Text
+  } deriving (Show, Eq)
+
+instance ToResourceProperties EC2CarrierGateway where
+  toResourceProperties EC2CarrierGateway{..} =
+    ResourceProperties
+    { resourcePropertiesType = "AWS::EC2::CarrierGateway"
+    , resourcePropertiesProperties =
+        hashMapFromList $ catMaybes
+        [ fmap (("Tags",) . toJSON) _eC2CarrierGatewayTags
+        , (Just . ("VpcId",) . toJSON) _eC2CarrierGatewayVpcId
+        ]
+    }
+
+-- | Constructor for 'EC2CarrierGateway' containing required fields as
+-- arguments.
+ec2CarrierGateway
+  :: Val Text -- ^ 'eccagVpcId'
+  -> EC2CarrierGateway
+ec2CarrierGateway vpcIdarg =
+  EC2CarrierGateway
+  { _eC2CarrierGatewayTags = Nothing
+  , _eC2CarrierGatewayVpcId = vpcIdarg
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-carriergateway.html#cfn-ec2-carriergateway-tags
+eccagTags :: Lens' EC2CarrierGateway (Maybe EC2CarrierGatewayTags)
+eccagTags = lens _eC2CarrierGatewayTags (\s a -> s { _eC2CarrierGatewayTags = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-carriergateway.html#cfn-ec2-carriergateway-vpcid
+eccagVpcId :: Lens' EC2CarrierGateway (Val Text)
+eccagVpcId = lens _eC2CarrierGatewayVpcId (\s a -> s { _eC2CarrierGatewayVpcId = a })
diff --git a/library-gen/Stratosphere/Resources/EC2CustomerGateway.hs b/library-gen/Stratosphere/Resources/EC2CustomerGateway.hs
--- a/library-gen/Stratosphere/Resources/EC2CustomerGateway.hs
+++ b/library-gen/Stratosphere/Resources/EC2CustomerGateway.hs
@@ -36,9 +36,9 @@
 -- | Constructor for 'EC2CustomerGateway' containing required fields as
 -- arguments.
 ec2CustomerGateway
-  :: Val Integer -- ^ 'eccgBgpAsn'
-  -> Val Text -- ^ 'eccgIpAddress'
-  -> Val Text -- ^ 'eccgType'
+  :: Val Integer -- ^ 'eccugBgpAsn'
+  -> Val Text -- ^ 'eccugIpAddress'
+  -> Val Text -- ^ 'eccugType'
   -> EC2CustomerGateway
 ec2CustomerGateway bgpAsnarg ipAddressarg typearg =
   EC2CustomerGateway
@@ -49,17 +49,17 @@
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-bgpasn
-eccgBgpAsn :: Lens' EC2CustomerGateway (Val Integer)
-eccgBgpAsn = lens _eC2CustomerGatewayBgpAsn (\s a -> s { _eC2CustomerGatewayBgpAsn = a })
+eccugBgpAsn :: Lens' EC2CustomerGateway (Val Integer)
+eccugBgpAsn = lens _eC2CustomerGatewayBgpAsn (\s a -> s { _eC2CustomerGatewayBgpAsn = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-ipaddress
-eccgIpAddress :: Lens' EC2CustomerGateway (Val Text)
-eccgIpAddress = lens _eC2CustomerGatewayIpAddress (\s a -> s { _eC2CustomerGatewayIpAddress = a })
+eccugIpAddress :: Lens' EC2CustomerGateway (Val Text)
+eccugIpAddress = lens _eC2CustomerGatewayIpAddress (\s a -> s { _eC2CustomerGatewayIpAddress = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-tags
-eccgTags :: Lens' EC2CustomerGateway (Maybe [Tag])
-eccgTags = lens _eC2CustomerGatewayTags (\s a -> s { _eC2CustomerGatewayTags = a })
+eccugTags :: Lens' EC2CustomerGateway (Maybe [Tag])
+eccugTags = lens _eC2CustomerGatewayTags (\s a -> s { _eC2CustomerGatewayTags = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-type
-eccgType :: Lens' EC2CustomerGateway (Val Text)
-eccgType = lens _eC2CustomerGatewayType (\s a -> s { _eC2CustomerGatewayType = a })
+eccugType :: Lens' EC2CustomerGateway (Val Text)
+eccugType = lens _eC2CustomerGatewayType (\s a -> s { _eC2CustomerGatewayType = a })
diff --git a/library-gen/Stratosphere/Resources/EC2TransitGateway.hs b/library-gen/Stratosphere/Resources/EC2TransitGateway.hs
--- a/library-gen/Stratosphere/Resources/EC2TransitGateway.hs
+++ b/library-gen/Stratosphere/Resources/EC2TransitGateway.hs
@@ -20,6 +20,7 @@
   , _eC2TransitGatewayDefaultRouteTablePropagation :: Maybe (Val Text)
   , _eC2TransitGatewayDescription :: Maybe (Val Text)
   , _eC2TransitGatewayDnsSupport :: Maybe (Val Text)
+  , _eC2TransitGatewayMulticastSupport :: Maybe (Val Text)
   , _eC2TransitGatewayTags :: Maybe [Tag]
   , _eC2TransitGatewayVpnEcmpSupport :: Maybe (Val Text)
   } deriving (Show, Eq)
@@ -36,6 +37,7 @@
         , fmap (("DefaultRouteTablePropagation",) . toJSON) _eC2TransitGatewayDefaultRouteTablePropagation
         , fmap (("Description",) . toJSON) _eC2TransitGatewayDescription
         , fmap (("DnsSupport",) . toJSON) _eC2TransitGatewayDnsSupport
+        , fmap (("MulticastSupport",) . toJSON) _eC2TransitGatewayMulticastSupport
         , fmap (("Tags",) . toJSON) _eC2TransitGatewayTags
         , fmap (("VpnEcmpSupport",) . toJSON) _eC2TransitGatewayVpnEcmpSupport
         ]
@@ -53,6 +55,7 @@
   , _eC2TransitGatewayDefaultRouteTablePropagation = Nothing
   , _eC2TransitGatewayDescription = Nothing
   , _eC2TransitGatewayDnsSupport = Nothing
+  , _eC2TransitGatewayMulticastSupport = Nothing
   , _eC2TransitGatewayTags = Nothing
   , _eC2TransitGatewayVpnEcmpSupport = Nothing
   }
@@ -80,6 +83,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-dnssupport
 ectgDnsSupport :: Lens' EC2TransitGateway (Maybe (Val Text))
 ectgDnsSupport = lens _eC2TransitGatewayDnsSupport (\s a -> s { _eC2TransitGatewayDnsSupport = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-multicastsupport
+ectgMulticastSupport :: Lens' EC2TransitGateway (Maybe (Val Text))
+ectgMulticastSupport = lens _eC2TransitGatewayMulticastSupport (\s a -> s { _eC2TransitGatewayMulticastSupport = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-tags
 ectgTags :: Lens' EC2TransitGateway (Maybe [Tag])
diff --git a/library-gen/Stratosphere/Resources/ECRRepository.hs b/library-gen/Stratosphere/Resources/ECRRepository.hs
--- a/library-gen/Stratosphere/Resources/ECRRepository.hs
+++ b/library-gen/Stratosphere/Resources/ECRRepository.hs
@@ -8,14 +8,15 @@
 module Stratosphere.Resources.ECRRepository where
 
 import Stratosphere.ResourceImports
-import Stratosphere.ResourceProperties.ECRRepositoryLifecyclePolicy
 import Stratosphere.ResourceProperties.Tag
 
 -- | Full data type definition for ECRRepository. See 'ecrRepository' for a
 -- more convenient constructor.
 data ECRRepository =
   ECRRepository
-  { _eCRRepositoryLifecyclePolicy :: Maybe ECRRepositoryLifecyclePolicy
+  { _eCRRepositoryImageScanningConfiguration :: Maybe Object
+  , _eCRRepositoryImageTagMutability :: Maybe (Val Text)
+  , _eCRRepositoryLifecyclePolicy :: Maybe Object
   , _eCRRepositoryRepositoryName :: Maybe (Val Text)
   , _eCRRepositoryRepositoryPolicyText :: Maybe Object
   , _eCRRepositoryTags :: Maybe [Tag]
@@ -27,7 +28,9 @@
     { resourcePropertiesType = "AWS::ECR::Repository"
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
-        [ fmap (("LifecyclePolicy",) . toJSON) _eCRRepositoryLifecyclePolicy
+        [ fmap (("ImageScanningConfiguration",) . toJSON) _eCRRepositoryImageScanningConfiguration
+        , fmap (("ImageTagMutability",) . toJSON) _eCRRepositoryImageTagMutability
+        , fmap (("LifecyclePolicy",) . toJSON) _eCRRepositoryLifecyclePolicy
         , fmap (("RepositoryName",) . toJSON) _eCRRepositoryRepositoryName
         , fmap (("RepositoryPolicyText",) . toJSON) _eCRRepositoryRepositoryPolicyText
         , fmap (("Tags",) . toJSON) _eCRRepositoryTags
@@ -39,14 +42,24 @@
   :: ECRRepository
 ecrRepository  =
   ECRRepository
-  { _eCRRepositoryLifecyclePolicy = Nothing
+  { _eCRRepositoryImageScanningConfiguration = Nothing
+  , _eCRRepositoryImageTagMutability = Nothing
+  , _eCRRepositoryLifecyclePolicy = Nothing
   , _eCRRepositoryRepositoryName = Nothing
   , _eCRRepositoryRepositoryPolicyText = Nothing
   , _eCRRepositoryTags = Nothing
   }
 
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-imagescanningconfiguration
+ecrrImageScanningConfiguration :: Lens' ECRRepository (Maybe Object)
+ecrrImageScanningConfiguration = lens _eCRRepositoryImageScanningConfiguration (\s a -> s { _eCRRepositoryImageScanningConfiguration = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-imagetagmutability
+ecrrImageTagMutability :: Lens' ECRRepository (Maybe (Val Text))
+ecrrImageTagMutability = lens _eCRRepositoryImageTagMutability (\s a -> s { _eCRRepositoryImageTagMutability = a })
+
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-lifecyclepolicy
-ecrrLifecyclePolicy :: Lens' ECRRepository (Maybe ECRRepositoryLifecyclePolicy)
+ecrrLifecyclePolicy :: Lens' ECRRepository (Maybe Object)
 ecrrLifecyclePolicy = lens _eCRRepositoryLifecyclePolicy (\s a -> s { _eCRRepositoryLifecyclePolicy = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-repositoryname
diff --git a/library-gen/Stratosphere/Resources/EKSNodegroup.hs b/library-gen/Stratosphere/Resources/EKSNodegroup.hs
--- a/library-gen/Stratosphere/Resources/EKSNodegroup.hs
+++ b/library-gen/Stratosphere/Resources/EKSNodegroup.hs
@@ -8,6 +8,7 @@
 module Stratosphere.Resources.EKSNodegroup where
 
 import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.EKSNodegroupLaunchTemplateSpecification
 import Stratosphere.ResourceProperties.EKSNodegroupRemoteAccess
 import Stratosphere.ResourceProperties.EKSNodegroupScalingConfig
 
@@ -21,6 +22,7 @@
   , _eKSNodegroupForceUpdateEnabled :: Maybe (Val Bool)
   , _eKSNodegroupInstanceTypes :: Maybe (ValList Text)
   , _eKSNodegroupLabels :: Maybe Object
+  , _eKSNodegroupLaunchTemplate :: Maybe EKSNodegroupLaunchTemplateSpecification
   , _eKSNodegroupNodeRole :: Val Text
   , _eKSNodegroupNodegroupName :: Maybe (Val Text)
   , _eKSNodegroupReleaseVersion :: Maybe (Val Text)
@@ -43,6 +45,7 @@
         , fmap (("ForceUpdateEnabled",) . toJSON) _eKSNodegroupForceUpdateEnabled
         , fmap (("InstanceTypes",) . toJSON) _eKSNodegroupInstanceTypes
         , fmap (("Labels",) . toJSON) _eKSNodegroupLabels
+        , fmap (("LaunchTemplate",) . toJSON) _eKSNodegroupLaunchTemplate
         , (Just . ("NodeRole",) . toJSON) _eKSNodegroupNodeRole
         , fmap (("NodegroupName",) . toJSON) _eKSNodegroupNodegroupName
         , fmap (("ReleaseVersion",) . toJSON) _eKSNodegroupReleaseVersion
@@ -68,6 +71,7 @@
   , _eKSNodegroupForceUpdateEnabled = Nothing
   , _eKSNodegroupInstanceTypes = Nothing
   , _eKSNodegroupLabels = Nothing
+  , _eKSNodegroupLaunchTemplate = Nothing
   , _eKSNodegroupNodeRole = nodeRolearg
   , _eKSNodegroupNodegroupName = Nothing
   , _eKSNodegroupReleaseVersion = Nothing
@@ -101,6 +105,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-labels
 eksnLabels :: Lens' EKSNodegroup (Maybe Object)
 eksnLabels = lens _eKSNodegroupLabels (\s a -> s { _eKSNodegroupLabels = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-launchtemplate
+eksnLaunchTemplate :: Lens' EKSNodegroup (Maybe EKSNodegroupLaunchTemplateSpecification)
+eksnLaunchTemplate = lens _eKSNodegroupLaunchTemplate (\s a -> s { _eKSNodegroupLaunchTemplate = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-noderole
 eksnNodeRole :: Lens' EKSNodegroup (Val Text)
diff --git a/library-gen/Stratosphere/Resources/IoTCertificate.hs b/library-gen/Stratosphere/Resources/IoTCertificate.hs
--- a/library-gen/Stratosphere/Resources/IoTCertificate.hs
+++ b/library-gen/Stratosphere/Resources/IoTCertificate.hs
@@ -14,7 +14,10 @@
 -- more convenient constructor.
 data IoTCertificate =
   IoTCertificate
-  { _ioTCertificateCertificateSigningRequest :: Val Text
+  { _ioTCertificateCACertificatePem :: Maybe (Val Text)
+  , _ioTCertificateCertificateMode :: Maybe (Val Text)
+  , _ioTCertificateCertificatePem :: Maybe (Val Text)
+  , _ioTCertificateCertificateSigningRequest :: Maybe (Val Text)
   , _ioTCertificateStatus :: Val Text
   } deriving (Show, Eq)
 
@@ -24,24 +27,41 @@
     { resourcePropertiesType = "AWS::IoT::Certificate"
     , resourcePropertiesProperties =
         hashMapFromList $ catMaybes
-        [ (Just . ("CertificateSigningRequest",) . toJSON) _ioTCertificateCertificateSigningRequest
+        [ fmap (("CACertificatePem",) . toJSON) _ioTCertificateCACertificatePem
+        , fmap (("CertificateMode",) . toJSON) _ioTCertificateCertificateMode
+        , fmap (("CertificatePem",) . toJSON) _ioTCertificateCertificatePem
+        , fmap (("CertificateSigningRequest",) . toJSON) _ioTCertificateCertificateSigningRequest
         , (Just . ("Status",) . toJSON) _ioTCertificateStatus
         ]
     }
 
 -- | Constructor for 'IoTCertificate' containing required fields as arguments.
 ioTCertificate
-  :: Val Text -- ^ 'itcCertificateSigningRequest'
-  -> Val Text -- ^ 'itcStatus'
+  :: Val Text -- ^ 'itcStatus'
   -> IoTCertificate
-ioTCertificate certificateSigningRequestarg statusarg =
+ioTCertificate statusarg =
   IoTCertificate
-  { _ioTCertificateCertificateSigningRequest = certificateSigningRequestarg
+  { _ioTCertificateCACertificatePem = Nothing
+  , _ioTCertificateCertificateMode = Nothing
+  , _ioTCertificateCertificatePem = Nothing
+  , _ioTCertificateCertificateSigningRequest = Nothing
   , _ioTCertificateStatus = statusarg
   }
 
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-cacertificatepem
+itcCACertificatePem :: Lens' IoTCertificate (Maybe (Val Text))
+itcCACertificatePem = lens _ioTCertificateCACertificatePem (\s a -> s { _ioTCertificateCACertificatePem = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatemode
+itcCertificateMode :: Lens' IoTCertificate (Maybe (Val Text))
+itcCertificateMode = lens _ioTCertificateCertificateMode (\s a -> s { _ioTCertificateCertificateMode = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatepem
+itcCertificatePem :: Lens' IoTCertificate (Maybe (Val Text))
+itcCertificatePem = lens _ioTCertificateCertificatePem (\s a -> s { _ioTCertificateCertificatePem = a })
+
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatesigningrequest
-itcCertificateSigningRequest :: Lens' IoTCertificate (Val Text)
+itcCertificateSigningRequest :: Lens' IoTCertificate (Maybe (Val Text))
 itcCertificateSigningRequest = lens _ioTCertificateCertificateSigningRequest (\s a -> s { _ioTCertificateCertificateSigningRequest = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-status
diff --git a/library-gen/Stratosphere/Resources/IoTProvisioningTemplate.hs b/library-gen/Stratosphere/Resources/IoTProvisioningTemplate.hs
--- a/library-gen/Stratosphere/Resources/IoTProvisioningTemplate.hs
+++ b/library-gen/Stratosphere/Resources/IoTProvisioningTemplate.hs
@@ -9,6 +9,7 @@
 
 import Stratosphere.ResourceImports
 import Stratosphere.ResourceProperties.IoTProvisioningTemplateProvisioningHook
+import Stratosphere.ResourceProperties.IoTProvisioningTemplateTags
 
 -- | Full data type definition for IoTProvisioningTemplate. See
 -- 'ioTProvisioningTemplate' for a more convenient constructor.
@@ -18,7 +19,7 @@
   , _ioTProvisioningTemplateEnabled :: Maybe (Val Bool)
   , _ioTProvisioningTemplatePreProvisioningHook :: Maybe IoTProvisioningTemplateProvisioningHook
   , _ioTProvisioningTemplateProvisioningRoleArn :: Val Text
-  , _ioTProvisioningTemplateTags :: Maybe [Object]
+  , _ioTProvisioningTemplateTags :: Maybe IoTProvisioningTemplateTags
   , _ioTProvisioningTemplateTemplateBody :: Val Text
   , _ioTProvisioningTemplateTemplateName :: Maybe (Val Text)
   } deriving (Show, Eq)
@@ -73,7 +74,7 @@
 itptProvisioningRoleArn = lens _ioTProvisioningTemplateProvisioningRoleArn (\s a -> s { _ioTProvisioningTemplateProvisioningRoleArn = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-tags
-itptTags :: Lens' IoTProvisioningTemplate (Maybe [Object])
+itptTags :: Lens' IoTProvisioningTemplate (Maybe IoTProvisioningTemplateTags)
 itptTags = lens _ioTProvisioningTemplateTags (\s a -> s { _ioTProvisioningTemplateTags = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html#cfn-iot-provisioningtemplate-templatebody
diff --git a/library-gen/Stratosphere/Resources/LambdaEventSourceMapping.hs b/library-gen/Stratosphere/Resources/LambdaEventSourceMapping.hs
--- a/library-gen/Stratosphere/Resources/LambdaEventSourceMapping.hs
+++ b/library-gen/Stratosphere/Resources/LambdaEventSourceMapping.hs
@@ -25,6 +25,7 @@
   , _lambdaEventSourceMappingMaximumRetryAttempts :: Maybe (Val Integer)
   , _lambdaEventSourceMappingParallelizationFactor :: Maybe (Val Integer)
   , _lambdaEventSourceMappingStartingPosition :: Maybe (Val Text)
+  , _lambdaEventSourceMappingTopics :: Maybe (ValList Text)
   } deriving (Show, Eq)
 
 instance ToResourceProperties LambdaEventSourceMapping where
@@ -44,6 +45,7 @@
         , fmap (("MaximumRetryAttempts",) . toJSON) _lambdaEventSourceMappingMaximumRetryAttempts
         , fmap (("ParallelizationFactor",) . toJSON) _lambdaEventSourceMappingParallelizationFactor
         , fmap (("StartingPosition",) . toJSON) _lambdaEventSourceMappingStartingPosition
+        , fmap (("Topics",) . toJSON) _lambdaEventSourceMappingTopics
         ]
     }
 
@@ -66,6 +68,7 @@
   , _lambdaEventSourceMappingMaximumRetryAttempts = Nothing
   , _lambdaEventSourceMappingParallelizationFactor = Nothing
   , _lambdaEventSourceMappingStartingPosition = Nothing
+  , _lambdaEventSourceMappingTopics = Nothing
   }
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize
@@ -111,3 +114,7 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition
 lesmStartingPosition :: Lens' LambdaEventSourceMapping (Maybe (Val Text))
 lesmStartingPosition = lens _lambdaEventSourceMappingStartingPosition (\s a -> s { _lambdaEventSourceMappingStartingPosition = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-topics
+lesmTopics :: Lens' LambdaEventSourceMapping (Maybe (ValList Text))
+lesmTopics = lens _lambdaEventSourceMappingTopics (\s a -> s { _lambdaEventSourceMappingTopics = a })
diff --git a/library-gen/Stratosphere/Resources/SNSTopic.hs b/library-gen/Stratosphere/Resources/SNSTopic.hs
--- a/library-gen/Stratosphere/Resources/SNSTopic.hs
+++ b/library-gen/Stratosphere/Resources/SNSTopic.hs
@@ -17,7 +17,6 @@
   SNSTopic
   { _sNSTopicContentBasedDeduplication :: Maybe (Val Bool)
   , _sNSTopicDisplayName :: Maybe (Val Text)
-  , _sNSTopicFifoTopic :: Maybe (Val Bool)
   , _sNSTopicKmsMasterKeyId :: Maybe (Val Text)
   , _sNSTopicSubscription :: Maybe [SNSTopicSubscription]
   , _sNSTopicTags :: Maybe [Tag]
@@ -32,7 +31,6 @@
         hashMapFromList $ catMaybes
         [ fmap (("ContentBasedDeduplication",) . toJSON) _sNSTopicContentBasedDeduplication
         , fmap (("DisplayName",) . toJSON) _sNSTopicDisplayName
-        , fmap (("FifoTopic",) . toJSON) _sNSTopicFifoTopic
         , fmap (("KmsMasterKeyId",) . toJSON) _sNSTopicKmsMasterKeyId
         , fmap (("Subscription",) . toJSON) _sNSTopicSubscription
         , fmap (("Tags",) . toJSON) _sNSTopicTags
@@ -47,7 +45,6 @@
   SNSTopic
   { _sNSTopicContentBasedDeduplication = Nothing
   , _sNSTopicDisplayName = Nothing
-  , _sNSTopicFifoTopic = Nothing
   , _sNSTopicKmsMasterKeyId = Nothing
   , _sNSTopicSubscription = Nothing
   , _sNSTopicTags = Nothing
@@ -61,10 +58,6 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-displayname
 snstDisplayName :: Lens' SNSTopic (Maybe (Val Text))
 snstDisplayName = lens _sNSTopicDisplayName (\s a -> s { _sNSTopicDisplayName = a })
-
--- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-fifotopic
-snstFifoTopic :: Lens' SNSTopic (Maybe (Val Bool))
-snstFifoTopic = lens _sNSTopicFifoTopic (\s a -> s { _sNSTopicFifoTopic = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-kmsmasterkeyid
 snstKmsMasterKeyId :: Lens' SNSTopic (Maybe (Val Text))
diff --git a/library-gen/Stratosphere/Resources/SageMakerMonitoringSchedule.hs b/library-gen/Stratosphere/Resources/SageMakerMonitoringSchedule.hs
new file mode 100644
--- /dev/null
+++ b/library-gen/Stratosphere/Resources/SageMakerMonitoringSchedule.hs
@@ -0,0 +1,108 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE StrictData #-}
+{-# LANGUAGE TupleSections #-}
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html
+
+module Stratosphere.Resources.SageMakerMonitoringSchedule where
+
+import Stratosphere.ResourceImports
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringExecutionSummary
+import Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringScheduleConfig
+import Stratosphere.ResourceProperties.Tag
+
+-- | Full data type definition for SageMakerMonitoringSchedule. See
+-- 'sageMakerMonitoringSchedule' for a more convenient constructor.
+data SageMakerMonitoringSchedule =
+  SageMakerMonitoringSchedule
+  { _sageMakerMonitoringScheduleCreationTime :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleEndpointName :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleFailureReason :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleLastModifiedTime :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleLastMonitoringExecutionSummary :: Maybe SageMakerMonitoringScheduleMonitoringExecutionSummary
+  , _sageMakerMonitoringScheduleMonitoringScheduleArn :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleMonitoringScheduleConfig :: SageMakerMonitoringScheduleMonitoringScheduleConfig
+  , _sageMakerMonitoringScheduleMonitoringScheduleName :: Val Text
+  , _sageMakerMonitoringScheduleMonitoringScheduleStatus :: Maybe (Val Text)
+  , _sageMakerMonitoringScheduleTags :: Maybe [Tag]
+  } deriving (Show, Eq)
+
+instance ToResourceProperties SageMakerMonitoringSchedule where
+  toResourceProperties SageMakerMonitoringSchedule{..} =
+    ResourceProperties
+    { resourcePropertiesType = "AWS::SageMaker::MonitoringSchedule"
+    , resourcePropertiesProperties =
+        hashMapFromList $ catMaybes
+        [ fmap (("CreationTime",) . toJSON) _sageMakerMonitoringScheduleCreationTime
+        , fmap (("EndpointName",) . toJSON) _sageMakerMonitoringScheduleEndpointName
+        , fmap (("FailureReason",) . toJSON) _sageMakerMonitoringScheduleFailureReason
+        , fmap (("LastModifiedTime",) . toJSON) _sageMakerMonitoringScheduleLastModifiedTime
+        , fmap (("LastMonitoringExecutionSummary",) . toJSON) _sageMakerMonitoringScheduleLastMonitoringExecutionSummary
+        , fmap (("MonitoringScheduleArn",) . toJSON) _sageMakerMonitoringScheduleMonitoringScheduleArn
+        , (Just . ("MonitoringScheduleConfig",) . toJSON) _sageMakerMonitoringScheduleMonitoringScheduleConfig
+        , (Just . ("MonitoringScheduleName",) . toJSON) _sageMakerMonitoringScheduleMonitoringScheduleName
+        , fmap (("MonitoringScheduleStatus",) . toJSON) _sageMakerMonitoringScheduleMonitoringScheduleStatus
+        , fmap (("Tags",) . toJSON) _sageMakerMonitoringScheduleTags
+        ]
+    }
+
+-- | Constructor for 'SageMakerMonitoringSchedule' containing required fields
+-- as arguments.
+sageMakerMonitoringSchedule
+  :: SageMakerMonitoringScheduleMonitoringScheduleConfig -- ^ 'smmsMonitoringScheduleConfig'
+  -> Val Text -- ^ 'smmsMonitoringScheduleName'
+  -> SageMakerMonitoringSchedule
+sageMakerMonitoringSchedule monitoringScheduleConfigarg monitoringScheduleNamearg =
+  SageMakerMonitoringSchedule
+  { _sageMakerMonitoringScheduleCreationTime = Nothing
+  , _sageMakerMonitoringScheduleEndpointName = Nothing
+  , _sageMakerMonitoringScheduleFailureReason = Nothing
+  , _sageMakerMonitoringScheduleLastModifiedTime = Nothing
+  , _sageMakerMonitoringScheduleLastMonitoringExecutionSummary = Nothing
+  , _sageMakerMonitoringScheduleMonitoringScheduleArn = Nothing
+  , _sageMakerMonitoringScheduleMonitoringScheduleConfig = monitoringScheduleConfigarg
+  , _sageMakerMonitoringScheduleMonitoringScheduleName = monitoringScheduleNamearg
+  , _sageMakerMonitoringScheduleMonitoringScheduleStatus = Nothing
+  , _sageMakerMonitoringScheduleTags = Nothing
+  }
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-creationtime
+smmsCreationTime :: Lens' SageMakerMonitoringSchedule (Maybe (Val Text))
+smmsCreationTime = lens _sageMakerMonitoringScheduleCreationTime (\s a -> s { _sageMakerMonitoringScheduleCreationTime = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-endpointname
+smmsEndpointName :: Lens' SageMakerMonitoringSchedule (Maybe (Val Text))
+smmsEndpointName = lens _sageMakerMonitoringScheduleEndpointName (\s a -> s { _sageMakerMonitoringScheduleEndpointName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-failurereason
+smmsFailureReason :: Lens' SageMakerMonitoringSchedule (Maybe (Val Text))
+smmsFailureReason = lens _sageMakerMonitoringScheduleFailureReason (\s a -> s { _sageMakerMonitoringScheduleFailureReason = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-lastmodifiedtime
+smmsLastModifiedTime :: Lens' SageMakerMonitoringSchedule (Maybe (Val Text))
+smmsLastModifiedTime = lens _sageMakerMonitoringScheduleLastModifiedTime (\s a -> s { _sageMakerMonitoringScheduleLastModifiedTime = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-lastmonitoringexecutionsummary
+smmsLastMonitoringExecutionSummary :: Lens' SageMakerMonitoringSchedule (Maybe SageMakerMonitoringScheduleMonitoringExecutionSummary)
+smmsLastMonitoringExecutionSummary = lens _sageMakerMonitoringScheduleLastMonitoringExecutionSummary (\s a -> s { _sageMakerMonitoringScheduleLastMonitoringExecutionSummary = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-monitoringschedulearn
+smmsMonitoringScheduleArn :: Lens' SageMakerMonitoringSchedule (Maybe (Val Text))
+smmsMonitoringScheduleArn = lens _sageMakerMonitoringScheduleMonitoringScheduleArn (\s a -> s { _sageMakerMonitoringScheduleMonitoringScheduleArn = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-monitoringscheduleconfig
+smmsMonitoringScheduleConfig :: Lens' SageMakerMonitoringSchedule SageMakerMonitoringScheduleMonitoringScheduleConfig
+smmsMonitoringScheduleConfig = lens _sageMakerMonitoringScheduleMonitoringScheduleConfig (\s a -> s { _sageMakerMonitoringScheduleMonitoringScheduleConfig = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-monitoringschedulename
+smmsMonitoringScheduleName :: Lens' SageMakerMonitoringSchedule (Val Text)
+smmsMonitoringScheduleName = lens _sageMakerMonitoringScheduleMonitoringScheduleName (\s a -> s { _sageMakerMonitoringScheduleMonitoringScheduleName = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-monitoringschedulestatus
+smmsMonitoringScheduleStatus :: Lens' SageMakerMonitoringSchedule (Maybe (Val Text))
+smmsMonitoringScheduleStatus = lens _sageMakerMonitoringScheduleMonitoringScheduleStatus (\s a -> s { _sageMakerMonitoringScheduleMonitoringScheduleStatus = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html#cfn-sagemaker-monitoringschedule-tags
+smmsTags :: Lens' SageMakerMonitoringSchedule (Maybe [Tag])
+smmsTags = lens _sageMakerMonitoringScheduleTags (\s a -> s { _sageMakerMonitoringScheduleTags = a })
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
@@ -19,6 +19,7 @@
   StepFunctionsStateMachine
   { _stepFunctionsStateMachineDefinitionS3Location :: Maybe StepFunctionsStateMachineS3Location
   , _stepFunctionsStateMachineDefinitionString :: Maybe (Val Text)
+  , _stepFunctionsStateMachineDefinitionSubstitutions :: Maybe Object
   , _stepFunctionsStateMachineLoggingConfiguration :: Maybe StepFunctionsStateMachineLoggingConfiguration
   , _stepFunctionsStateMachineRoleArn :: Val Text
   , _stepFunctionsStateMachineStateMachineName :: Maybe (Val Text)
@@ -35,6 +36,7 @@
         hashMapFromList $ catMaybes
         [ fmap (("DefinitionS3Location",) . toJSON) _stepFunctionsStateMachineDefinitionS3Location
         , fmap (("DefinitionString",) . toJSON) _stepFunctionsStateMachineDefinitionString
+        , fmap (("DefinitionSubstitutions",) . toJSON) _stepFunctionsStateMachineDefinitionSubstitutions
         , fmap (("LoggingConfiguration",) . toJSON) _stepFunctionsStateMachineLoggingConfiguration
         , (Just . ("RoleArn",) . toJSON) _stepFunctionsStateMachineRoleArn
         , fmap (("StateMachineName",) . toJSON) _stepFunctionsStateMachineStateMachineName
@@ -53,6 +55,7 @@
   StepFunctionsStateMachine
   { _stepFunctionsStateMachineDefinitionS3Location = Nothing
   , _stepFunctionsStateMachineDefinitionString = Nothing
+  , _stepFunctionsStateMachineDefinitionSubstitutions = Nothing
   , _stepFunctionsStateMachineLoggingConfiguration = Nothing
   , _stepFunctionsStateMachineRoleArn = roleArnarg
   , _stepFunctionsStateMachineStateMachineName = Nothing
@@ -68,6 +71,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitionstring
 sfsmDefinitionString :: Lens' StepFunctionsStateMachine (Maybe (Val Text))
 sfsmDefinitionString = lens _stepFunctionsStateMachineDefinitionString (\s a -> s { _stepFunctionsStateMachineDefinitionString = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitionsubstitutions
+sfsmDefinitionSubstitutions :: Lens' StepFunctionsStateMachine (Maybe Object)
+sfsmDefinitionSubstitutions = lens _stepFunctionsStateMachineDefinitionSubstitutions (\s a -> s { _stepFunctionsStateMachineDefinitionSubstitutions = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-loggingconfiguration
 sfsmLoggingConfiguration :: Lens' StepFunctionsStateMachine (Maybe StepFunctionsStateMachineLoggingConfiguration)
diff --git a/library-gen/Stratosphere/Resources/TransferServer.hs b/library-gen/Stratosphere/Resources/TransferServer.hs
--- a/library-gen/Stratosphere/Resources/TransferServer.hs
+++ b/library-gen/Stratosphere/Resources/TransferServer.hs
@@ -22,6 +22,7 @@
   , _transferServerIdentityProviderDetails :: Maybe TransferServerIdentityProviderDetails
   , _transferServerIdentityProviderType :: Maybe (Val Text)
   , _transferServerLoggingRole :: Maybe (Val Text)
+  , _transferServerSecurityPolicyName :: Maybe (Val Text)
   , _transferServerTags :: Maybe [Tag]
   } deriving (Show, Eq)
 
@@ -37,6 +38,7 @@
         , fmap (("IdentityProviderDetails",) . toJSON) _transferServerIdentityProviderDetails
         , fmap (("IdentityProviderType",) . toJSON) _transferServerIdentityProviderType
         , fmap (("LoggingRole",) . toJSON) _transferServerLoggingRole
+        , fmap (("SecurityPolicyName",) . toJSON) _transferServerSecurityPolicyName
         , fmap (("Tags",) . toJSON) _transferServerTags
         ]
     }
@@ -52,6 +54,7 @@
   , _transferServerIdentityProviderDetails = Nothing
   , _transferServerIdentityProviderType = Nothing
   , _transferServerLoggingRole = Nothing
+  , _transferServerSecurityPolicyName = Nothing
   , _transferServerTags = Nothing
   }
 
@@ -78,6 +81,10 @@
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-loggingrole
 tsLoggingRole :: Lens' TransferServer (Maybe (Val Text))
 tsLoggingRole = lens _transferServerLoggingRole (\s a -> s { _transferServerLoggingRole = a })
+
+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-securitypolicyname
+tsSecurityPolicyName :: Lens' TransferServer (Maybe (Val Text))
+tsSecurityPolicyName = lens _transferServerSecurityPolicyName (\s a -> s { _transferServerSecurityPolicyName = a })
 
 -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-tags
 tsTags :: Lens' TransferServer (Maybe [Tag])
diff --git a/library/Stratosphere/Types.hs b/library/Stratosphere/Types.hs
--- a/library/Stratosphere/Types.hs
+++ b/library/Stratosphere/Types.hs
@@ -53,13 +53,14 @@
   deriving (Show, Read, Eq, Generic, ToJSON)
 
 data HttpMethod
-  = GET
-  | POST
-  | PUT
-  | HEAD
+  = ANY
   | DELETE
+  | GET
+  | HEAD
   | OPTIONS
-  | ANY
+  | PATCH
+  | POST
+  | PUT
   deriving (Show, Read, Eq, Generic, ToJSON)
 
 data LoggingLevel
diff --git a/stratosphere.cabal b/stratosphere.cabal
--- a/stratosphere.cabal
+++ b/stratosphere.cabal
@@ -1,13 +1,13 @@
 cabal-version: 1.12
 
--- This file has been generated from package.yaml by hpack version 0.31.2.
+-- This file has been generated from package.yaml by hpack version 0.33.0.
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: ecd31917c6c788877da2721c4104df8ed1332353827cfe1604bc815f79e42762
+-- hash: 6765ec959bba1c4110c24af5f8d27cdf62644e46306cf6d01cf0e5610210b434
 
 name:           stratosphere
-version:        0.57.0
+version:        0.58.0
 synopsis:       EDSL for AWS CloudFormation
 description:    EDSL for AWS CloudFormation
 category:       AWS, Cloud
@@ -123,6 +123,18 @@
       Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepAdjustment
       Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration
       Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyTargetTrackingScalingPolicyConfiguration
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationAlarm
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationAlarmMetric
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationComponentConfiguration
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationComponentMonitoringSetting
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationConfigurationDetails
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationCustomComponent
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationLog
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationLogPattern
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationLogPatternSet
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationSubComponentConfigurationDetails
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationSubComponentTypeConfiguration
+      Stratosphere.ResourceProperties.ApplicationInsightsApplicationWindowsEvent
       Stratosphere.ResourceProperties.AppMeshGatewayRouteGatewayRouteSpec
       Stratosphere.ResourceProperties.AppMeshGatewayRouteGatewayRouteTarget
       Stratosphere.ResourceProperties.AppMeshGatewayRouteGatewayRouteVirtualService
@@ -491,6 +503,7 @@
       Stratosphere.ResourceProperties.DynamoDBTableStreamSpecification
       Stratosphere.ResourceProperties.DynamoDBTableTimeToLiveSpecification
       Stratosphere.ResourceProperties.EC2CapacityReservationTagSpecification
+      Stratosphere.ResourceProperties.EC2CarrierGatewayTags
       Stratosphere.ResourceProperties.EC2ClientVpnEndpointCertificateAuthenticationRequest
       Stratosphere.ResourceProperties.EC2ClientVpnEndpointClientAuthenticationRequest
       Stratosphere.ResourceProperties.EC2ClientVpnEndpointConnectionLogOptions
@@ -573,7 +586,6 @@
       Stratosphere.ResourceProperties.EC2SpotFleetTargetGroupsConfig
       Stratosphere.ResourceProperties.EC2TrafficMirrorFilterRuleTrafficMirrorPortRange
       Stratosphere.ResourceProperties.EC2VPNConnectionVpnTunnelOptionsSpecification
-      Stratosphere.ResourceProperties.ECRRepositoryLifecyclePolicy
       Stratosphere.ResourceProperties.ECSCapacityProviderAutoScalingGroupProvider
       Stratosphere.ResourceProperties.ECSCapacityProviderManagedScaling
       Stratosphere.ResourceProperties.ECSClusterCapacityProviderStrategyItem
@@ -586,10 +598,13 @@
       Stratosphere.ResourceProperties.ECSServicePlacementConstraint
       Stratosphere.ResourceProperties.ECSServicePlacementStrategy
       Stratosphere.ResourceProperties.ECSServiceServiceRegistry
+      Stratosphere.ResourceProperties.ECSTaskDefinitionAuthorizationConfig
       Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDefinition
       Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDependency
       Stratosphere.ResourceProperties.ECSTaskDefinitionDevice
       Stratosphere.ResourceProperties.ECSTaskDefinitionDockerVolumeConfiguration
+      Stratosphere.ResourceProperties.ECSTaskDefinitionEFSVolumeConfiguration
+      Stratosphere.ResourceProperties.ECSTaskDefinitionEnvironmentFile
       Stratosphere.ResourceProperties.ECSTaskDefinitionFirelensConfiguration
       Stratosphere.ResourceProperties.ECSTaskDefinitionHealthCheck
       Stratosphere.ResourceProperties.ECSTaskDefinitionHostEntry
@@ -626,6 +641,7 @@
       Stratosphere.ResourceProperties.EKSClusterEncryptionConfig
       Stratosphere.ResourceProperties.EKSClusterProvider
       Stratosphere.ResourceProperties.EKSClusterResourcesVpcConfig
+      Stratosphere.ResourceProperties.EKSNodegroupLaunchTemplateSpecification
       Stratosphere.ResourceProperties.EKSNodegroupRemoteAccess
       Stratosphere.ResourceProperties.EKSNodegroupScalingConfig
       Stratosphere.ResourceProperties.ElastiCacheReplicationGroupNodeGroupConfiguration
@@ -950,6 +966,7 @@
       Stratosphere.ResourceProperties.IoTEventsInputAttribute
       Stratosphere.ResourceProperties.IoTEventsInputInputDefinition
       Stratosphere.ResourceProperties.IoTProvisioningTemplateProvisioningHook
+      Stratosphere.ResourceProperties.IoTProvisioningTemplateTags
       Stratosphere.ResourceProperties.IoTThingAttributePayload
       Stratosphere.ResourceProperties.IoTThingsGraphFlowTemplateDefinitionDocument
       Stratosphere.ResourceProperties.IoTTopicRuleAction
@@ -1327,6 +1344,25 @@
       Stratosphere.ResourceProperties.SageMakerEndpointVariantProperty
       Stratosphere.ResourceProperties.SageMakerModelContainerDefinition
       Stratosphere.ResourceProperties.SageMakerModelVpcConfig
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleBaselineConfig
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleClusterConfig
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleConstraintsResource
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleEndpointInput
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringAppSpecification
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringExecutionSummary
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringInput
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringInputs
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringJobDefinition
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringOutput
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringOutputConfig
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringResources
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleMonitoringScheduleConfig
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleNetworkConfig
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleS3Output
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleScheduleConfig
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleStatisticsResource
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleStoppingCondition
+      Stratosphere.ResourceProperties.SageMakerMonitoringScheduleVpcConfig
       Stratosphere.ResourceProperties.SageMakerNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHook
       Stratosphere.ResourceProperties.SageMakerWorkteamCognitoMemberDefinition
       Stratosphere.ResourceProperties.SageMakerWorkteamMemberDefinition
@@ -1526,6 +1562,7 @@
       Stratosphere.Resources.AppConfigHostedConfigurationVersion
       Stratosphere.Resources.ApplicationAutoScalingScalableTarget
       Stratosphere.Resources.ApplicationAutoScalingScalingPolicy
+      Stratosphere.Resources.ApplicationInsightsApplication
       Stratosphere.Resources.AppMeshGatewayRoute
       Stratosphere.Resources.AppMeshMesh
       Stratosphere.Resources.AppMeshRoute
@@ -1640,6 +1677,7 @@
       Stratosphere.Resources.DocDBDBSubnetGroup
       Stratosphere.Resources.DynamoDBTable
       Stratosphere.Resources.EC2CapacityReservation
+      Stratosphere.Resources.EC2CarrierGateway
       Stratosphere.Resources.EC2ClientVpnAuthorizationRule
       Stratosphere.Resources.EC2ClientVpnEndpoint
       Stratosphere.Resources.EC2ClientVpnRoute
@@ -1948,6 +1986,7 @@
       Stratosphere.Resources.SageMakerEndpoint
       Stratosphere.Resources.SageMakerEndpointConfig
       Stratosphere.Resources.SageMakerModel
+      Stratosphere.Resources.SageMakerMonitoringSchedule
       Stratosphere.Resources.SageMakerNotebookInstance
       Stratosphere.Resources.SageMakerNotebookInstanceLifecycleConfig
       Stratosphere.Resources.SageMakerWorkteam
