diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
 
 ## Version
 
-`1.4.5`
+`1.5.0`
 
 
 ## Description
diff --git a/amazonka-sms.cabal b/amazonka-sms.cabal
--- a/amazonka-sms.cabal
+++ b/amazonka-sms.cabal
@@ -1,13 +1,13 @@
 name:                  amazonka-sms
-version:               1.4.5
+version:               1.5.0
 synopsis:              Amazon Server Migration Service SDK.
 homepage:              https://github.com/brendanhay/amazonka
 bug-reports:           https://github.com/brendanhay/amazonka/issues
-license:               OtherLicense
+license:               MPL-2.0
 license-file:          LICENSE
 author:                Brendan Hay
-maintainer:            Brendan Hay <brendan.g.hay@gmail.com>
-copyright:             Copyright (c) 2013-2016 Brendan Hay
+maintainer:            Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+copyright:             Copyright (c) 2013-2017 Brendan Hay
 category:              Network, AWS, Cloud, Distributed Computing
 build-type:            Simple
 cabal-version:         >= 1.10
@@ -29,14 +29,19 @@
     to get started.
 
 source-repository head
-    type:     git
-    location: git://github.com/brendanhay/amazonka.git
+    type:              git
+    location:          git://github.com/brendanhay/amazonka.git
+    subdir:            amazonka-sms
 
 library
     default-language:  Haskell2010
     hs-source-dirs:    src gen
 
-    ghc-options:       -Wall
+    ghc-options:
+        -Wall
+        -fwarn-incomplete-uni-patterns
+        -fwarn-incomplete-record-updates
+        -funbox-strict-fields
 
     exposed-modules:
           Network.AWS.SMS
@@ -59,7 +64,7 @@
         , Network.AWS.SMS.Types.Sum
 
     build-depends:
-          amazonka-core == 1.4.5.*
+          amazonka-core == 1.5.0.*
         , base          >= 4.7     && < 5
 
 test-suite amazonka-sms-test
@@ -79,9 +84,9 @@
         , Test.AWS.SMS.Internal
 
     build-depends:
-          amazonka-core == 1.4.5.*
-        , amazonka-test == 1.4.5.*
-        , amazonka-sms == 1.4.5.*
+          amazonka-core == 1.5.0.*
+        , amazonka-test == 1.5.0.*
+        , amazonka-sms
         , base
         , bytestring
         , tasty
diff --git a/gen/Network/AWS/SMS.hs b/gen/Network/AWS/SMS.hs
--- a/gen/Network/AWS/SMS.hs
+++ b/gen/Network/AWS/SMS.hs
@@ -5,9 +5,9 @@
 
 -- |
 -- Module      : Network.AWS.SMS
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
@@ -59,19 +59,19 @@
     -- ** DeleteServerCatalog
     , module Network.AWS.SMS.DeleteServerCatalog
 
-    -- ** GetReplicationRuns
+    -- ** GetReplicationRuns (Paginated)
     , module Network.AWS.SMS.GetReplicationRuns
 
-    -- ** GetServers
+    -- ** GetServers (Paginated)
     , module Network.AWS.SMS.GetServers
 
     -- ** ImportServerCatalog
     , module Network.AWS.SMS.ImportServerCatalog
 
-    -- ** GetConnectors
+    -- ** GetConnectors (Paginated)
     , module Network.AWS.SMS.GetConnectors
 
-    -- ** GetReplicationJobs
+    -- ** GetReplicationJobs (Paginated)
     , module Network.AWS.SMS.GetReplicationJobs
 
     -- ** DisassociateConnector
@@ -187,19 +187,19 @@
     , vmsaVmId
     ) where
 
-import           Network.AWS.SMS.CreateReplicationJob
-import           Network.AWS.SMS.DeleteReplicationJob
-import           Network.AWS.SMS.DeleteServerCatalog
-import           Network.AWS.SMS.DisassociateConnector
-import           Network.AWS.SMS.GetConnectors
-import           Network.AWS.SMS.GetReplicationJobs
-import           Network.AWS.SMS.GetReplicationRuns
-import           Network.AWS.SMS.GetServers
-import           Network.AWS.SMS.ImportServerCatalog
-import           Network.AWS.SMS.StartOnDemandReplicationRun
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.UpdateReplicationJob
-import           Network.AWS.SMS.Waiters
+import Network.AWS.SMS.CreateReplicationJob
+import Network.AWS.SMS.DeleteReplicationJob
+import Network.AWS.SMS.DeleteServerCatalog
+import Network.AWS.SMS.DisassociateConnector
+import Network.AWS.SMS.GetConnectors
+import Network.AWS.SMS.GetReplicationJobs
+import Network.AWS.SMS.GetReplicationRuns
+import Network.AWS.SMS.GetServers
+import Network.AWS.SMS.ImportServerCatalog
+import Network.AWS.SMS.StartOnDemandReplicationRun
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.UpdateReplicationJob
+import Network.AWS.SMS.Waiters
 
 {- $errors
 Error matchers are designed for use with the functions provided by
diff --git a/gen/Network/AWS/SMS/CreateReplicationJob.hs b/gen/Network/AWS/SMS/CreateReplicationJob.hs
--- a/gen/Network/AWS/SMS/CreateReplicationJob.hs
+++ b/gen/Network/AWS/SMS/CreateReplicationJob.hs
@@ -12,9 +12,9 @@
 
 -- |
 -- Module      : Network.AWS.SMS.CreateReplicationJob
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
@@ -40,23 +40,24 @@
     , crjrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'createReplicationJob' smart constructor.
 data CreateReplicationJob = CreateReplicationJob'
-    { _crjLicenseType         :: !(Maybe LicenseType)
-    , _crjRoleName            :: !(Maybe Text)
-    , _crjDescription         :: !(Maybe Text)
-    , _crjServerId            :: !Text
-    , _crjSeedReplicationTime :: !POSIX
-    , _crjFrequency           :: !Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _crjLicenseType         :: !(Maybe LicenseType)
+  , _crjRoleName            :: !(Maybe Text)
+  , _crjDescription         :: !(Maybe Text)
+  , _crjServerId            :: !Text
+  , _crjSeedReplicationTime :: !POSIX
+  , _crjFrequency           :: !Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'CreateReplicationJob' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -78,15 +79,16 @@
     -> Int -- ^ 'crjFrequency'
     -> CreateReplicationJob
 createReplicationJob pServerId_ pSeedReplicationTime_ pFrequency_ =
-    CreateReplicationJob'
-    { _crjLicenseType = Nothing
-    , _crjRoleName = Nothing
-    , _crjDescription = Nothing
-    , _crjServerId = pServerId_
-    , _crjSeedReplicationTime = _Time # pSeedReplicationTime_
-    , _crjFrequency = pFrequency_
-    }
+  CreateReplicationJob'
+  { _crjLicenseType = Nothing
+  , _crjRoleName = Nothing
+  , _crjDescription = Nothing
+  , _crjServerId = pServerId_
+  , _crjSeedReplicationTime = _Time # pSeedReplicationTime_
+  , _crjFrequency = pFrequency_
+  }
 
+
 -- | Undocumented member.
 crjLicenseType :: Lens' CreateReplicationJob (Maybe LicenseType)
 crjLicenseType = lens _crjLicenseType (\ s a -> s{_crjLicenseType = a});
@@ -121,9 +123,9 @@
                  CreateReplicationJobResponse' <$>
                    (x .?> "replicationJobId") <*> (pure (fromEnum s)))
 
-instance Hashable CreateReplicationJob
+instance Hashable CreateReplicationJob where
 
-instance NFData CreateReplicationJob
+instance NFData CreateReplicationJob where
 
 instance ToHeaders CreateReplicationJob where
         toHeaders
@@ -155,10 +157,11 @@
 
 -- | /See:/ 'createReplicationJobResponse' smart constructor.
 data CreateReplicationJobResponse = CreateReplicationJobResponse'
-    { _crjrsReplicationJobId :: !(Maybe Text)
-    , _crjrsResponseStatus   :: !Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _crjrsReplicationJobId :: !(Maybe Text)
+  , _crjrsResponseStatus   :: !Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'CreateReplicationJobResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -170,11 +173,10 @@
     :: Int -- ^ 'crjrsResponseStatus'
     -> CreateReplicationJobResponse
 createReplicationJobResponse pResponseStatus_ =
-    CreateReplicationJobResponse'
-    { _crjrsReplicationJobId = Nothing
-    , _crjrsResponseStatus = pResponseStatus_
-    }
+  CreateReplicationJobResponse'
+  {_crjrsReplicationJobId = Nothing, _crjrsResponseStatus = pResponseStatus_}
 
+
 -- | Undocumented member.
 crjrsReplicationJobId :: Lens' CreateReplicationJobResponse (Maybe Text)
 crjrsReplicationJobId = lens _crjrsReplicationJobId (\ s a -> s{_crjrsReplicationJobId = a});
@@ -183,4 +185,4 @@
 crjrsResponseStatus :: Lens' CreateReplicationJobResponse Int
 crjrsResponseStatus = lens _crjrsResponseStatus (\ s a -> s{_crjrsResponseStatus = a});
 
-instance NFData CreateReplicationJobResponse
+instance NFData CreateReplicationJobResponse where
diff --git a/gen/Network/AWS/SMS/DeleteReplicationJob.hs b/gen/Network/AWS/SMS/DeleteReplicationJob.hs
--- a/gen/Network/AWS/SMS/DeleteReplicationJob.hs
+++ b/gen/Network/AWS/SMS/DeleteReplicationJob.hs
@@ -12,9 +12,9 @@
 
 -- |
 -- Module      : Network.AWS.SMS.DeleteReplicationJob
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
@@ -34,18 +34,19 @@
     , drjrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'deleteReplicationJob' smart constructor.
 newtype DeleteReplicationJob = DeleteReplicationJob'
-    { _drjReplicationJobId :: Text
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _drjReplicationJobId :: Text
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DeleteReplicationJob' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -55,10 +56,9 @@
     :: Text -- ^ 'drjReplicationJobId'
     -> DeleteReplicationJob
 deleteReplicationJob pReplicationJobId_ =
-    DeleteReplicationJob'
-    { _drjReplicationJobId = pReplicationJobId_
-    }
+  DeleteReplicationJob' {_drjReplicationJobId = pReplicationJobId_}
 
+
 -- | Undocumented member.
 drjReplicationJobId :: Lens' DeleteReplicationJob Text
 drjReplicationJobId = lens _drjReplicationJobId (\ s a -> s{_drjReplicationJobId = a});
@@ -73,9 +73,9 @@
                  DeleteReplicationJobResponse' <$>
                    (pure (fromEnum s)))
 
-instance Hashable DeleteReplicationJob
+instance Hashable DeleteReplicationJob where
 
-instance NFData DeleteReplicationJob
+instance NFData DeleteReplicationJob where
 
 instance ToHeaders DeleteReplicationJob where
         toHeaders
@@ -101,9 +101,10 @@
 
 -- | /See:/ 'deleteReplicationJobResponse' smart constructor.
 newtype DeleteReplicationJobResponse = DeleteReplicationJobResponse'
-    { _drjrsResponseStatus :: Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _drjrsResponseStatus :: Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DeleteReplicationJobResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -113,12 +114,11 @@
     :: Int -- ^ 'drjrsResponseStatus'
     -> DeleteReplicationJobResponse
 deleteReplicationJobResponse pResponseStatus_ =
-    DeleteReplicationJobResponse'
-    { _drjrsResponseStatus = pResponseStatus_
-    }
+  DeleteReplicationJobResponse' {_drjrsResponseStatus = pResponseStatus_}
 
+
 -- | -- | The response status code.
 drjrsResponseStatus :: Lens' DeleteReplicationJobResponse Int
 drjrsResponseStatus = lens _drjrsResponseStatus (\ s a -> s{_drjrsResponseStatus = a});
 
-instance NFData DeleteReplicationJobResponse
+instance NFData DeleteReplicationJobResponse where
diff --git a/gen/Network/AWS/SMS/DeleteServerCatalog.hs b/gen/Network/AWS/SMS/DeleteServerCatalog.hs
--- a/gen/Network/AWS/SMS/DeleteServerCatalog.hs
+++ b/gen/Network/AWS/SMS/DeleteServerCatalog.hs
@@ -12,9 +12,9 @@
 
 -- |
 -- Module      : Network.AWS.SMS.DeleteServerCatalog
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
@@ -32,24 +32,26 @@
     , dscrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'deleteServerCatalog' smart constructor.
 data DeleteServerCatalog =
-    DeleteServerCatalog'
-    deriving (Eq,Read,Show,Data,Typeable,Generic)
+  DeleteServerCatalog'
+  deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DeleteServerCatalog' with the minimum fields required to make a request.
 --
 deleteServerCatalog
     :: DeleteServerCatalog
 deleteServerCatalog = DeleteServerCatalog'
 
+
 instance AWSRequest DeleteServerCatalog where
         type Rs DeleteServerCatalog =
              DeleteServerCatalogResponse
@@ -59,9 +61,9 @@
               (\ s h x ->
                  DeleteServerCatalogResponse' <$> (pure (fromEnum s)))
 
-instance Hashable DeleteServerCatalog
+instance Hashable DeleteServerCatalog where
 
-instance NFData DeleteServerCatalog
+instance NFData DeleteServerCatalog where
 
 instance ToHeaders DeleteServerCatalog where
         toHeaders
@@ -84,9 +86,10 @@
 
 -- | /See:/ 'deleteServerCatalogResponse' smart constructor.
 newtype DeleteServerCatalogResponse = DeleteServerCatalogResponse'
-    { _dscrsResponseStatus :: Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _dscrsResponseStatus :: Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DeleteServerCatalogResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -96,12 +99,11 @@
     :: Int -- ^ 'dscrsResponseStatus'
     -> DeleteServerCatalogResponse
 deleteServerCatalogResponse pResponseStatus_ =
-    DeleteServerCatalogResponse'
-    { _dscrsResponseStatus = pResponseStatus_
-    }
+  DeleteServerCatalogResponse' {_dscrsResponseStatus = pResponseStatus_}
 
+
 -- | -- | The response status code.
 dscrsResponseStatus :: Lens' DeleteServerCatalogResponse Int
 dscrsResponseStatus = lens _dscrsResponseStatus (\ s a -> s{_dscrsResponseStatus = a});
 
-instance NFData DeleteServerCatalogResponse
+instance NFData DeleteServerCatalogResponse where
diff --git a/gen/Network/AWS/SMS/DisassociateConnector.hs b/gen/Network/AWS/SMS/DisassociateConnector.hs
--- a/gen/Network/AWS/SMS/DisassociateConnector.hs
+++ b/gen/Network/AWS/SMS/DisassociateConnector.hs
@@ -12,9 +12,9 @@
 
 -- |
 -- Module      : Network.AWS.SMS.DisassociateConnector
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
@@ -34,18 +34,19 @@
     , dcrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'disassociateConnector' smart constructor.
 newtype DisassociateConnector = DisassociateConnector'
-    { _dcConnectorId :: Text
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _dcConnectorId :: Text
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DisassociateConnector' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -55,10 +56,9 @@
     :: Text -- ^ 'dcConnectorId'
     -> DisassociateConnector
 disassociateConnector pConnectorId_ =
-    DisassociateConnector'
-    { _dcConnectorId = pConnectorId_
-    }
+  DisassociateConnector' {_dcConnectorId = pConnectorId_}
 
+
 -- | Undocumented member.
 dcConnectorId :: Lens' DisassociateConnector Text
 dcConnectorId = lens _dcConnectorId (\ s a -> s{_dcConnectorId = a});
@@ -73,9 +73,9 @@
                  DisassociateConnectorResponse' <$>
                    (pure (fromEnum s)))
 
-instance Hashable DisassociateConnector
+instance Hashable DisassociateConnector where
 
-instance NFData DisassociateConnector
+instance NFData DisassociateConnector where
 
 instance ToHeaders DisassociateConnector where
         toHeaders
@@ -100,9 +100,10 @@
 
 -- | /See:/ 'disassociateConnectorResponse' smart constructor.
 newtype DisassociateConnectorResponse = DisassociateConnectorResponse'
-    { _dcrsResponseStatus :: Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _dcrsResponseStatus :: Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'DisassociateConnectorResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -112,12 +113,11 @@
     :: Int -- ^ 'dcrsResponseStatus'
     -> DisassociateConnectorResponse
 disassociateConnectorResponse pResponseStatus_ =
-    DisassociateConnectorResponse'
-    { _dcrsResponseStatus = pResponseStatus_
-    }
+  DisassociateConnectorResponse' {_dcrsResponseStatus = pResponseStatus_}
 
+
 -- | -- | The response status code.
 dcrsResponseStatus :: Lens' DisassociateConnectorResponse Int
 dcrsResponseStatus = lens _dcrsResponseStatus (\ s a -> s{_dcrsResponseStatus = a});
 
-instance NFData DisassociateConnectorResponse
+instance NFData DisassociateConnectorResponse where
diff --git a/gen/Network/AWS/SMS/GetConnectors.hs b/gen/Network/AWS/SMS/GetConnectors.hs
--- a/gen/Network/AWS/SMS/GetConnectors.hs
+++ b/gen/Network/AWS/SMS/GetConnectors.hs
@@ -12,13 +12,15 @@
 
 -- |
 -- Module      : Network.AWS.SMS.GetConnectors
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
 -- The GetConnectors API returns a list of connectors that are registered with the Server Migration Service.
+--
+-- This operation returns paginated results.
 module Network.AWS.SMS.GetConnectors
     (
     -- * Creating a Request
@@ -37,19 +39,21 @@
     , gcrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Pager
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'getConnectors' smart constructor.
 data GetConnectors = GetConnectors'
-    { _gcNextToken  :: !(Maybe Text)
-    , _gcMaxResults :: !(Maybe Int)
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _gcNextToken  :: !(Maybe Text)
+  , _gcMaxResults :: !(Maybe Int)
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'GetConnectors' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -59,12 +63,9 @@
 -- * 'gcMaxResults' - Undocumented member.
 getConnectors
     :: GetConnectors
-getConnectors =
-    GetConnectors'
-    { _gcNextToken = Nothing
-    , _gcMaxResults = Nothing
-    }
+getConnectors = GetConnectors' {_gcNextToken = Nothing, _gcMaxResults = Nothing}
 
+
 -- | Undocumented member.
 gcNextToken :: Lens' GetConnectors (Maybe Text)
 gcNextToken = lens _gcNextToken (\ s a -> s{_gcNextToken = a});
@@ -73,6 +74,13 @@
 gcMaxResults :: Lens' GetConnectors (Maybe Int)
 gcMaxResults = lens _gcMaxResults (\ s a -> s{_gcMaxResults = a});
 
+instance AWSPager GetConnectors where
+        page rq rs
+          | stop (rs ^. gcrsNextToken) = Nothing
+          | stop (rs ^. gcrsConnectorList) = Nothing
+          | otherwise =
+            Just $ rq & gcNextToken .~ rs ^. gcrsNextToken
+
 instance AWSRequest GetConnectors where
         type Rs GetConnectors = GetConnectorsResponse
         request = postJSON sms
@@ -84,9 +92,9 @@
                      (x .?> "nextToken")
                      <*> (pure (fromEnum s)))
 
-instance Hashable GetConnectors
+instance Hashable GetConnectors where
 
-instance NFData GetConnectors
+instance NFData GetConnectors where
 
 instance ToHeaders GetConnectors where
         toHeaders
@@ -113,11 +121,12 @@
 
 -- | /See:/ 'getConnectorsResponse' smart constructor.
 data GetConnectorsResponse = GetConnectorsResponse'
-    { _gcrsConnectorList  :: !(Maybe [Connector])
-    , _gcrsNextToken      :: !(Maybe Text)
-    , _gcrsResponseStatus :: !Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _gcrsConnectorList  :: !(Maybe [Connector])
+  , _gcrsNextToken      :: !(Maybe Text)
+  , _gcrsResponseStatus :: !Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'GetConnectorsResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -131,12 +140,13 @@
     :: Int -- ^ 'gcrsResponseStatus'
     -> GetConnectorsResponse
 getConnectorsResponse pResponseStatus_ =
-    GetConnectorsResponse'
-    { _gcrsConnectorList = Nothing
-    , _gcrsNextToken = Nothing
-    , _gcrsResponseStatus = pResponseStatus_
-    }
+  GetConnectorsResponse'
+  { _gcrsConnectorList = Nothing
+  , _gcrsNextToken = Nothing
+  , _gcrsResponseStatus = pResponseStatus_
+  }
 
+
 -- | Undocumented member.
 gcrsConnectorList :: Lens' GetConnectorsResponse [Connector]
 gcrsConnectorList = lens _gcrsConnectorList (\ s a -> s{_gcrsConnectorList = a}) . _Default . _Coerce;
@@ -149,4 +159,4 @@
 gcrsResponseStatus :: Lens' GetConnectorsResponse Int
 gcrsResponseStatus = lens _gcrsResponseStatus (\ s a -> s{_gcrsResponseStatus = a});
 
-instance NFData GetConnectorsResponse
+instance NFData GetConnectorsResponse where
diff --git a/gen/Network/AWS/SMS/GetReplicationJobs.hs b/gen/Network/AWS/SMS/GetReplicationJobs.hs
--- a/gen/Network/AWS/SMS/GetReplicationJobs.hs
+++ b/gen/Network/AWS/SMS/GetReplicationJobs.hs
@@ -12,13 +12,15 @@
 
 -- |
 -- Module      : Network.AWS.SMS.GetReplicationJobs
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
 -- The GetReplicationJobs API will return all of your ReplicationJobs and their details. This API returns a paginated list, that may be consecutively called with nextToken to retrieve all ReplicationJobs.
+--
+-- This operation returns paginated results.
 module Network.AWS.SMS.GetReplicationJobs
     (
     -- * Creating a Request
@@ -38,20 +40,22 @@
     , grjrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Pager
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'getReplicationJobs' smart constructor.
 data GetReplicationJobs = GetReplicationJobs'
-    { _grjReplicationJobId :: !(Maybe Text)
-    , _grjNextToken        :: !(Maybe Text)
-    , _grjMaxResults       :: !(Maybe Int)
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _grjReplicationJobId :: !(Maybe Text)
+  , _grjNextToken        :: !(Maybe Text)
+  , _grjMaxResults       :: !(Maybe Int)
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'GetReplicationJobs' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -64,12 +68,13 @@
 getReplicationJobs
     :: GetReplicationJobs
 getReplicationJobs =
-    GetReplicationJobs'
-    { _grjReplicationJobId = Nothing
-    , _grjNextToken = Nothing
-    , _grjMaxResults = Nothing
-    }
+  GetReplicationJobs'
+  { _grjReplicationJobId = Nothing
+  , _grjNextToken = Nothing
+  , _grjMaxResults = Nothing
+  }
 
+
 -- | Undocumented member.
 grjReplicationJobId :: Lens' GetReplicationJobs (Maybe Text)
 grjReplicationJobId = lens _grjReplicationJobId (\ s a -> s{_grjReplicationJobId = a});
@@ -82,6 +87,13 @@
 grjMaxResults :: Lens' GetReplicationJobs (Maybe Int)
 grjMaxResults = lens _grjMaxResults (\ s a -> s{_grjMaxResults = a});
 
+instance AWSPager GetReplicationJobs where
+        page rq rs
+          | stop (rs ^. grjrsNextToken) = Nothing
+          | stop (rs ^. grjrsReplicationJobList) = Nothing
+          | otherwise =
+            Just $ rq & grjNextToken .~ rs ^. grjrsNextToken
+
 instance AWSRequest GetReplicationJobs where
         type Rs GetReplicationJobs =
              GetReplicationJobsResponse
@@ -94,9 +106,9 @@
                      (x .?> "nextToken")
                      <*> (pure (fromEnum s)))
 
-instance Hashable GetReplicationJobs
+instance Hashable GetReplicationJobs where
 
-instance NFData GetReplicationJobs
+instance NFData GetReplicationJobs where
 
 instance ToHeaders GetReplicationJobs where
         toHeaders
@@ -124,11 +136,12 @@
 
 -- | /See:/ 'getReplicationJobsResponse' smart constructor.
 data GetReplicationJobsResponse = GetReplicationJobsResponse'
-    { _grjrsReplicationJobList :: !(Maybe [ReplicationJob])
-    , _grjrsNextToken          :: !(Maybe Text)
-    , _grjrsResponseStatus     :: !Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _grjrsReplicationJobList :: !(Maybe [ReplicationJob])
+  , _grjrsNextToken          :: !(Maybe Text)
+  , _grjrsResponseStatus     :: !Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'GetReplicationJobsResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -142,12 +155,13 @@
     :: Int -- ^ 'grjrsResponseStatus'
     -> GetReplicationJobsResponse
 getReplicationJobsResponse pResponseStatus_ =
-    GetReplicationJobsResponse'
-    { _grjrsReplicationJobList = Nothing
-    , _grjrsNextToken = Nothing
-    , _grjrsResponseStatus = pResponseStatus_
-    }
+  GetReplicationJobsResponse'
+  { _grjrsReplicationJobList = Nothing
+  , _grjrsNextToken = Nothing
+  , _grjrsResponseStatus = pResponseStatus_
+  }
 
+
 -- | Undocumented member.
 grjrsReplicationJobList :: Lens' GetReplicationJobsResponse [ReplicationJob]
 grjrsReplicationJobList = lens _grjrsReplicationJobList (\ s a -> s{_grjrsReplicationJobList = a}) . _Default . _Coerce;
@@ -160,4 +174,4 @@
 grjrsResponseStatus :: Lens' GetReplicationJobsResponse Int
 grjrsResponseStatus = lens _grjrsResponseStatus (\ s a -> s{_grjrsResponseStatus = a});
 
-instance NFData GetReplicationJobsResponse
+instance NFData GetReplicationJobsResponse where
diff --git a/gen/Network/AWS/SMS/GetReplicationRuns.hs b/gen/Network/AWS/SMS/GetReplicationRuns.hs
--- a/gen/Network/AWS/SMS/GetReplicationRuns.hs
+++ b/gen/Network/AWS/SMS/GetReplicationRuns.hs
@@ -12,13 +12,15 @@
 
 -- |
 -- Module      : Network.AWS.SMS.GetReplicationRuns
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
 -- The GetReplicationRuns API will return all ReplicationRuns for a given ReplicationJob. This API returns a paginated list, that may be consecutively called with nextToken to retrieve all ReplicationRuns for a ReplicationJob.
+--
+-- This operation returns paginated results.
 module Network.AWS.SMS.GetReplicationRuns
     (
     -- * Creating a Request
@@ -39,20 +41,22 @@
     , grrrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Pager
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'getReplicationRuns' smart constructor.
 data GetReplicationRuns = GetReplicationRuns'
-    { _grrNextToken        :: !(Maybe Text)
-    , _grrMaxResults       :: !(Maybe Int)
-    , _grrReplicationJobId :: !Text
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _grrNextToken        :: !(Maybe Text)
+  , _grrMaxResults       :: !(Maybe Int)
+  , _grrReplicationJobId :: !Text
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'GetReplicationRuns' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -66,12 +70,13 @@
     :: Text -- ^ 'grrReplicationJobId'
     -> GetReplicationRuns
 getReplicationRuns pReplicationJobId_ =
-    GetReplicationRuns'
-    { _grrNextToken = Nothing
-    , _grrMaxResults = Nothing
-    , _grrReplicationJobId = pReplicationJobId_
-    }
+  GetReplicationRuns'
+  { _grrNextToken = Nothing
+  , _grrMaxResults = Nothing
+  , _grrReplicationJobId = pReplicationJobId_
+  }
 
+
 -- | Undocumented member.
 grrNextToken :: Lens' GetReplicationRuns (Maybe Text)
 grrNextToken = lens _grrNextToken (\ s a -> s{_grrNextToken = a});
@@ -84,6 +89,13 @@
 grrReplicationJobId :: Lens' GetReplicationRuns Text
 grrReplicationJobId = lens _grrReplicationJobId (\ s a -> s{_grrReplicationJobId = a});
 
+instance AWSPager GetReplicationRuns where
+        page rq rs
+          | stop (rs ^. grrrsNextToken) = Nothing
+          | stop (rs ^. grrrsReplicationRunList) = Nothing
+          | otherwise =
+            Just $ rq & grrNextToken .~ rs ^. grrrsNextToken
+
 instance AWSRequest GetReplicationRuns where
         type Rs GetReplicationRuns =
              GetReplicationRunsResponse
@@ -96,9 +108,9 @@
                      (x .?> "replicationRunList" .!@ mempty)
                      <*> (pure (fromEnum s)))
 
-instance Hashable GetReplicationRuns
+instance Hashable GetReplicationRuns where
 
-instance NFData GetReplicationRuns
+instance NFData GetReplicationRuns where
 
 instance ToHeaders GetReplicationRuns where
         toHeaders
@@ -126,12 +138,13 @@
 
 -- | /See:/ 'getReplicationRunsResponse' smart constructor.
 data GetReplicationRunsResponse = GetReplicationRunsResponse'
-    { _grrrsReplicationJob     :: !(Maybe ReplicationJob)
-    , _grrrsNextToken          :: !(Maybe Text)
-    , _grrrsReplicationRunList :: !(Maybe [ReplicationRun])
-    , _grrrsResponseStatus     :: !Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _grrrsReplicationJob     :: !(Maybe ReplicationJob)
+  , _grrrsNextToken          :: !(Maybe Text)
+  , _grrrsReplicationRunList :: !(Maybe [ReplicationRun])
+  , _grrrsResponseStatus     :: !Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'GetReplicationRunsResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -147,13 +160,14 @@
     :: Int -- ^ 'grrrsResponseStatus'
     -> GetReplicationRunsResponse
 getReplicationRunsResponse pResponseStatus_ =
-    GetReplicationRunsResponse'
-    { _grrrsReplicationJob = Nothing
-    , _grrrsNextToken = Nothing
-    , _grrrsReplicationRunList = Nothing
-    , _grrrsResponseStatus = pResponseStatus_
-    }
+  GetReplicationRunsResponse'
+  { _grrrsReplicationJob = Nothing
+  , _grrrsNextToken = Nothing
+  , _grrrsReplicationRunList = Nothing
+  , _grrrsResponseStatus = pResponseStatus_
+  }
 
+
 -- | Undocumented member.
 grrrsReplicationJob :: Lens' GetReplicationRunsResponse (Maybe ReplicationJob)
 grrrsReplicationJob = lens _grrrsReplicationJob (\ s a -> s{_grrrsReplicationJob = a});
@@ -170,4 +184,4 @@
 grrrsResponseStatus :: Lens' GetReplicationRunsResponse Int
 grrrsResponseStatus = lens _grrrsResponseStatus (\ s a -> s{_grrrsResponseStatus = a});
 
-instance NFData GetReplicationRunsResponse
+instance NFData GetReplicationRunsResponse where
diff --git a/gen/Network/AWS/SMS/GetServers.hs b/gen/Network/AWS/SMS/GetServers.hs
--- a/gen/Network/AWS/SMS/GetServers.hs
+++ b/gen/Network/AWS/SMS/GetServers.hs
@@ -12,13 +12,15 @@
 
 -- |
 -- Module      : Network.AWS.SMS.GetServers
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
 -- The GetServers API returns a list of all servers in your server catalog. For this call to succeed, you must previously have called ImportServerCatalog.
+--
+-- This operation returns paginated results.
 module Network.AWS.SMS.GetServers
     (
     -- * Creating a Request
@@ -39,19 +41,21 @@
     , gsrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Pager
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'getServers' smart constructor.
 data GetServers = GetServers'
-    { _gsNextToken  :: !(Maybe Text)
-    , _gsMaxResults :: !(Maybe Int)
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _gsNextToken  :: !(Maybe Text)
+  , _gsMaxResults :: !(Maybe Int)
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'GetServers' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -61,12 +65,9 @@
 -- * 'gsMaxResults' - Undocumented member.
 getServers
     :: GetServers
-getServers =
-    GetServers'
-    { _gsNextToken = Nothing
-    , _gsMaxResults = Nothing
-    }
+getServers = GetServers' {_gsNextToken = Nothing, _gsMaxResults = Nothing}
 
+
 -- | Undocumented member.
 gsNextToken :: Lens' GetServers (Maybe Text)
 gsNextToken = lens _gsNextToken (\ s a -> s{_gsNextToken = a});
@@ -75,6 +76,13 @@
 gsMaxResults :: Lens' GetServers (Maybe Int)
 gsMaxResults = lens _gsMaxResults (\ s a -> s{_gsMaxResults = a});
 
+instance AWSPager GetServers where
+        page rq rs
+          | stop (rs ^. gsrsNextToken) = Nothing
+          | stop (rs ^. gsrsServerList) = Nothing
+          | otherwise =
+            Just $ rq & gsNextToken .~ rs ^. gsrsNextToken
+
 instance AWSRequest GetServers where
         type Rs GetServers = GetServersResponse
         request = postJSON sms
@@ -88,9 +96,9 @@
                      <*> (x .?> "serverList" .!@ mempty)
                      <*> (pure (fromEnum s)))
 
-instance Hashable GetServers
+instance Hashable GetServers where
 
-instance NFData GetServers
+instance NFData GetServers where
 
 instance ToHeaders GetServers where
         toHeaders
@@ -117,13 +125,14 @@
 
 -- | /See:/ 'getServersResponse' smart constructor.
 data GetServersResponse = GetServersResponse'
-    { _gsrsServerCatalogStatus :: !(Maybe ServerCatalogStatus)
-    , _gsrsLastModifiedOn      :: !(Maybe POSIX)
-    , _gsrsNextToken           :: !(Maybe Text)
-    , _gsrsServerList          :: !(Maybe [Server])
-    , _gsrsResponseStatus      :: !Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _gsrsServerCatalogStatus :: !(Maybe ServerCatalogStatus)
+  , _gsrsLastModifiedOn      :: !(Maybe POSIX)
+  , _gsrsNextToken           :: !(Maybe Text)
+  , _gsrsServerList          :: !(Maybe [Server])
+  , _gsrsResponseStatus      :: !Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'GetServersResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -141,14 +150,15 @@
     :: Int -- ^ 'gsrsResponseStatus'
     -> GetServersResponse
 getServersResponse pResponseStatus_ =
-    GetServersResponse'
-    { _gsrsServerCatalogStatus = Nothing
-    , _gsrsLastModifiedOn = Nothing
-    , _gsrsNextToken = Nothing
-    , _gsrsServerList = Nothing
-    , _gsrsResponseStatus = pResponseStatus_
-    }
+  GetServersResponse'
+  { _gsrsServerCatalogStatus = Nothing
+  , _gsrsLastModifiedOn = Nothing
+  , _gsrsNextToken = Nothing
+  , _gsrsServerList = Nothing
+  , _gsrsResponseStatus = pResponseStatus_
+  }
 
+
 -- | Undocumented member.
 gsrsServerCatalogStatus :: Lens' GetServersResponse (Maybe ServerCatalogStatus)
 gsrsServerCatalogStatus = lens _gsrsServerCatalogStatus (\ s a -> s{_gsrsServerCatalogStatus = a});
@@ -169,4 +179,4 @@
 gsrsResponseStatus :: Lens' GetServersResponse Int
 gsrsResponseStatus = lens _gsrsResponseStatus (\ s a -> s{_gsrsResponseStatus = a});
 
-instance NFData GetServersResponse
+instance NFData GetServersResponse where
diff --git a/gen/Network/AWS/SMS/ImportServerCatalog.hs b/gen/Network/AWS/SMS/ImportServerCatalog.hs
--- a/gen/Network/AWS/SMS/ImportServerCatalog.hs
+++ b/gen/Network/AWS/SMS/ImportServerCatalog.hs
@@ -12,9 +12,9 @@
 
 -- |
 -- Module      : Network.AWS.SMS.ImportServerCatalog
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
@@ -32,24 +32,26 @@
     , iscrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'importServerCatalog' smart constructor.
 data ImportServerCatalog =
-    ImportServerCatalog'
-    deriving (Eq,Read,Show,Data,Typeable,Generic)
+  ImportServerCatalog'
+  deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'ImportServerCatalog' with the minimum fields required to make a request.
 --
 importServerCatalog
     :: ImportServerCatalog
 importServerCatalog = ImportServerCatalog'
 
+
 instance AWSRequest ImportServerCatalog where
         type Rs ImportServerCatalog =
              ImportServerCatalogResponse
@@ -59,9 +61,9 @@
               (\ s h x ->
                  ImportServerCatalogResponse' <$> (pure (fromEnum s)))
 
-instance Hashable ImportServerCatalog
+instance Hashable ImportServerCatalog where
 
-instance NFData ImportServerCatalog
+instance NFData ImportServerCatalog where
 
 instance ToHeaders ImportServerCatalog where
         toHeaders
@@ -84,9 +86,10 @@
 
 -- | /See:/ 'importServerCatalogResponse' smart constructor.
 newtype ImportServerCatalogResponse = ImportServerCatalogResponse'
-    { _iscrsResponseStatus :: Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _iscrsResponseStatus :: Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'ImportServerCatalogResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -96,12 +99,11 @@
     :: Int -- ^ 'iscrsResponseStatus'
     -> ImportServerCatalogResponse
 importServerCatalogResponse pResponseStatus_ =
-    ImportServerCatalogResponse'
-    { _iscrsResponseStatus = pResponseStatus_
-    }
+  ImportServerCatalogResponse' {_iscrsResponseStatus = pResponseStatus_}
 
+
 -- | -- | The response status code.
 iscrsResponseStatus :: Lens' ImportServerCatalogResponse Int
 iscrsResponseStatus = lens _iscrsResponseStatus (\ s a -> s{_iscrsResponseStatus = a});
 
-instance NFData ImportServerCatalogResponse
+instance NFData ImportServerCatalogResponse where
diff --git a/gen/Network/AWS/SMS/StartOnDemandReplicationRun.hs b/gen/Network/AWS/SMS/StartOnDemandReplicationRun.hs
--- a/gen/Network/AWS/SMS/StartOnDemandReplicationRun.hs
+++ b/gen/Network/AWS/SMS/StartOnDemandReplicationRun.hs
@@ -12,9 +12,9 @@
 
 -- |
 -- Module      : Network.AWS.SMS.StartOnDemandReplicationRun
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
@@ -36,19 +36,20 @@
     , sodrrrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'startOnDemandReplicationRun' smart constructor.
 data StartOnDemandReplicationRun = StartOnDemandReplicationRun'
-    { _sodrrDescription      :: !(Maybe Text)
-    , _sodrrReplicationJobId :: !Text
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _sodrrDescription      :: !(Maybe Text)
+  , _sodrrReplicationJobId :: !Text
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'StartOnDemandReplicationRun' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -60,11 +61,10 @@
     :: Text -- ^ 'sodrrReplicationJobId'
     -> StartOnDemandReplicationRun
 startOnDemandReplicationRun pReplicationJobId_ =
-    StartOnDemandReplicationRun'
-    { _sodrrDescription = Nothing
-    , _sodrrReplicationJobId = pReplicationJobId_
-    }
+  StartOnDemandReplicationRun'
+  {_sodrrDescription = Nothing, _sodrrReplicationJobId = pReplicationJobId_}
 
+
 -- | Undocumented member.
 sodrrDescription :: Lens' StartOnDemandReplicationRun (Maybe Text)
 sodrrDescription = lens _sodrrDescription (\ s a -> s{_sodrrDescription = a});
@@ -83,9 +83,9 @@
                  StartOnDemandReplicationRunResponse' <$>
                    (x .?> "replicationRunId") <*> (pure (fromEnum s)))
 
-instance Hashable StartOnDemandReplicationRun
+instance Hashable StartOnDemandReplicationRun where
 
-instance NFData StartOnDemandReplicationRun
+instance NFData StartOnDemandReplicationRun where
 
 instance ToHeaders StartOnDemandReplicationRun where
         toHeaders
@@ -112,10 +112,11 @@
 
 -- | /See:/ 'startOnDemandReplicationRunResponse' smart constructor.
 data StartOnDemandReplicationRunResponse = StartOnDemandReplicationRunResponse'
-    { _sodrrrsReplicationRunId :: !(Maybe Text)
-    , _sodrrrsResponseStatus   :: !Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _sodrrrsReplicationRunId :: !(Maybe Text)
+  , _sodrrrsResponseStatus   :: !Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'StartOnDemandReplicationRunResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -127,11 +128,12 @@
     :: Int -- ^ 'sodrrrsResponseStatus'
     -> StartOnDemandReplicationRunResponse
 startOnDemandReplicationRunResponse pResponseStatus_ =
-    StartOnDemandReplicationRunResponse'
-    { _sodrrrsReplicationRunId = Nothing
-    , _sodrrrsResponseStatus = pResponseStatus_
-    }
+  StartOnDemandReplicationRunResponse'
+  { _sodrrrsReplicationRunId = Nothing
+  , _sodrrrsResponseStatus = pResponseStatus_
+  }
 
+
 -- | Undocumented member.
 sodrrrsReplicationRunId :: Lens' StartOnDemandReplicationRunResponse (Maybe Text)
 sodrrrsReplicationRunId = lens _sodrrrsReplicationRunId (\ s a -> s{_sodrrrsReplicationRunId = a});
@@ -141,3 +143,4 @@
 sodrrrsResponseStatus = lens _sodrrrsResponseStatus (\ s a -> s{_sodrrrsResponseStatus = a});
 
 instance NFData StartOnDemandReplicationRunResponse
+         where
diff --git a/gen/Network/AWS/SMS/Types.hs b/gen/Network/AWS/SMS/Types.hs
--- a/gen/Network/AWS/SMS/Types.hs
+++ b/gen/Network/AWS/SMS/Types.hs
@@ -4,9 +4,9 @@
 
 -- |
 -- Module      : Network.AWS.SMS.Types
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
@@ -123,38 +123,40 @@
     , vmsaVmId
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Sign.V4
-import           Network.AWS.SMS.Types.Product
-import           Network.AWS.SMS.Types.Sum
+import Network.AWS.Lens
+import Network.AWS.Prelude
+import Network.AWS.Sign.V4
+import Network.AWS.SMS.Types.Product
+import Network.AWS.SMS.Types.Sum
 
 -- | API version @2016-10-24@ of the Amazon Server Migration Service SDK configuration.
 sms :: Service
 sms =
-    Service
-    { _svcAbbrev = "SMS"
-    , _svcSigner = v4
-    , _svcPrefix = "sms"
-    , _svcVersion = "2016-10-24"
-    , _svcEndpoint = defaultEndpoint sms
-    , _svcTimeout = Just 70
-    , _svcCheck = statusSuccess
-    , _svcError = parseJSONError "SMS"
-    , _svcRetry = retry
-    }
+  Service
+  { _svcAbbrev = "SMS"
+  , _svcSigner = v4
+  , _svcPrefix = "sms"
+  , _svcVersion = "2016-10-24"
+  , _svcEndpoint = defaultEndpoint sms
+  , _svcTimeout = Just 70
+  , _svcCheck = statusSuccess
+  , _svcError = parseJSONError "SMS"
+  , _svcRetry = retry
+  }
   where
     retry =
-        Exponential
-        { _retryBase = 5.0e-2
-        , _retryGrowth = 2
-        , _retryAttempts = 5
-        , _retryCheck = check
-        }
+      Exponential
+      { _retryBase = 5.0e-2
+      , _retryGrowth = 2
+      , _retryAttempts = 5
+      , _retryCheck = check
+      }
     check e
+      | has (hasCode "ThrottledException" . hasStatus 400) e =
+        Just "throttled_exception"
       | has (hasStatus 429) e = Just "too_many_requests"
       | has (hasCode "ThrottlingException" . hasStatus 400) e =
-          Just "throttling_exception"
+        Just "throttling_exception"
       | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"
       | has (hasStatus 504) e = Just "gateway_timeout"
       | has (hasStatus 502) e = Just "bad_gateway"
@@ -163,51 +165,61 @@
       | has (hasStatus 509) e = Just "limit_exceeded"
       | otherwise = Nothing
 
+
 -- | This user has exceeded the maximum allowed Replication Run limit.
 _ReplicationRunLimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
 _ReplicationRunLimitExceededException =
-    _ServiceError . hasCode "ReplicationRunLimitExceededException"
+  _MatchServiceError sms "ReplicationRunLimitExceededException"
 
+
 -- | A parameter specified in the request is not valid, is unsupported, or cannot be used.
 _InvalidParameterException :: AsError a => Getting (First ServiceError) a ServiceError
-_InvalidParameterException =
-    _ServiceError . hasCode "InvalidParameterException"
+_InvalidParameterException = _MatchServiceError sms "InvalidParameterException"
 
+
 -- | No connectors are available to handle this request. Please associate connector(s) and verify any existing connectors are healthy and can respond to requests.
 _NoConnectorsAvailableException :: AsError a => Getting (First ServiceError) a ServiceError
 _NoConnectorsAvailableException =
-    _ServiceError . hasCode "NoConnectorsAvailableException"
+  _MatchServiceError sms "NoConnectorsAvailableException"
 
+
 -- | The specified Replication Job cannot be found.
 _ReplicationJobNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
 _ReplicationJobNotFoundException =
-    _ServiceError . hasCode "ReplicationJobNotFoundException"
+  _MatchServiceError sms "ReplicationJobNotFoundException"
 
+
 -- | The provided server cannot be replicated.
 _ServerCannotBeReplicatedException :: AsError a => Getting (First ServiceError) a ServiceError
 _ServerCannotBeReplicatedException =
-    _ServiceError . hasCode "ServerCannotBeReplicatedException"
+  _MatchServiceError sms "ServerCannotBeReplicatedException"
 
+
 -- | An internal error has occured.
 _InternalError :: AsError a => Getting (First ServiceError) a ServiceError
-_InternalError = _ServiceError . hasCode "InternalError"
+_InternalError = _MatchServiceError sms "InternalError"
 
+
 -- | An active Replication Job already exists for the specified server.
 _ReplicationJobAlreadyExistsException :: AsError a => Getting (First ServiceError) a ServiceError
 _ReplicationJobAlreadyExistsException =
-    _ServiceError . hasCode "ReplicationJobAlreadyExistsException"
+  _MatchServiceError sms "ReplicationJobAlreadyExistsException"
 
+
 -- | The specified operation is not allowed. This error can occur for a number of reasons; for example, you might be trying to start a Replication Run before seed Replication Run.
 _OperationNotPermittedException :: AsError a => Getting (First ServiceError) a ServiceError
 _OperationNotPermittedException =
-    _ServiceError . hasCode "OperationNotPermittedException"
+  _MatchServiceError sms "OperationNotPermittedException"
 
+
 -- | The request is missing a required parameter. Ensure that you have supplied all the required parameters for the request.
 _MissingRequiredParameterException :: AsError a => Getting (First ServiceError) a ServiceError
 _MissingRequiredParameterException =
-    _ServiceError . hasCode "MissingRequiredParameterException"
+  _MatchServiceError sms "MissingRequiredParameterException"
 
+
 -- | This user does not have permissions to perform this operation.
 _UnauthorizedOperationException :: AsError a => Getting (First ServiceError) a ServiceError
 _UnauthorizedOperationException =
-    _ServiceError . hasCode "UnauthorizedOperationException"
+  _MatchServiceError sms "UnauthorizedOperationException"
+
diff --git a/gen/Network/AWS/SMS/Types/Product.hs b/gen/Network/AWS/SMS/Types/Product.hs
--- a/gen/Network/AWS/SMS/Types/Product.hs
+++ b/gen/Network/AWS/SMS/Types/Product.hs
@@ -9,34 +9,35 @@
 
 -- |
 -- Module      : Network.AWS.SMS.Types.Product
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
 module Network.AWS.SMS.Types.Product where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.SMS.Types.Sum
+import Network.AWS.Lens
+import Network.AWS.Prelude
+import Network.AWS.SMS.Types.Sum
 
 -- | Object representing a Connector
 --
 -- /See:/ 'connector' smart constructor.
 data Connector = Connector'
-    { _cStatus         :: !(Maybe ConnectorStatus)
-    , _cVmManagerName  :: !(Maybe Text)
-    , _cIpAddress      :: !(Maybe Text)
-    , _cVmManagerId    :: !(Maybe Text)
-    , _cVmManagerType  :: !(Maybe VMManagerType)
-    , _cConnectorId    :: !(Maybe Text)
-    , _cAssociatedOn   :: !(Maybe POSIX)
-    , _cMacAddress     :: !(Maybe Text)
-    , _cVersion        :: !(Maybe Text)
-    , _cCapabilityList :: !(Maybe [ConnectorCapability])
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _cStatus         :: !(Maybe ConnectorStatus)
+  , _cVmManagerName  :: !(Maybe Text)
+  , _cIpAddress      :: !(Maybe Text)
+  , _cVmManagerId    :: !(Maybe Text)
+  , _cVmManagerType  :: !(Maybe VMManagerType)
+  , _cConnectorId    :: !(Maybe Text)
+  , _cAssociatedOn   :: !(Maybe POSIX)
+  , _cMacAddress     :: !(Maybe Text)
+  , _cVersion        :: !(Maybe Text)
+  , _cCapabilityList :: !(Maybe [ConnectorCapability])
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Connector' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -63,19 +64,20 @@
 connector
     :: Connector
 connector =
-    Connector'
-    { _cStatus = Nothing
-    , _cVmManagerName = Nothing
-    , _cIpAddress = Nothing
-    , _cVmManagerId = Nothing
-    , _cVmManagerType = Nothing
-    , _cConnectorId = Nothing
-    , _cAssociatedOn = Nothing
-    , _cMacAddress = Nothing
-    , _cVersion = Nothing
-    , _cCapabilityList = Nothing
-    }
+  Connector'
+  { _cStatus = Nothing
+  , _cVmManagerName = Nothing
+  , _cIpAddress = Nothing
+  , _cVmManagerId = Nothing
+  , _cVmManagerType = Nothing
+  , _cConnectorId = Nothing
+  , _cAssociatedOn = Nothing
+  , _cMacAddress = Nothing
+  , _cVersion = Nothing
+  , _cCapabilityList = Nothing
+  }
 
+
 -- | Undocumented member.
 cStatus :: Lens' Connector (Maybe ConnectorStatus)
 cStatus = lens _cStatus (\ s a -> s{_cStatus = a});
@@ -131,30 +133,31 @@
                      <*> (x .:? "version")
                      <*> (x .:? "capabilityList" .!= mempty))
 
-instance Hashable Connector
+instance Hashable Connector where
 
-instance NFData Connector
+instance NFData Connector where
 
 -- | Object representing a Replication Job
 --
 -- /See:/ 'replicationJob' smart constructor.
 data ReplicationJob = ReplicationJob'
-    { _rjFrequency                   :: !(Maybe Int)
-    , _rjState                       :: !(Maybe ReplicationJobState)
-    , _rjServerType                  :: !(Maybe ServerType)
-    , _rjServerId                    :: !(Maybe Text)
-    , _rjLicenseType                 :: !(Maybe LicenseType)
-    , _rjRoleName                    :: !(Maybe Text)
-    , _rjVmServer                    :: !(Maybe VMServer)
-    , _rjReplicationJobId            :: !(Maybe Text)
-    , _rjReplicationRunList          :: !(Maybe [ReplicationRun])
-    , _rjNextReplicationRunStartTime :: !(Maybe POSIX)
-    , _rjStatusMessage               :: !(Maybe Text)
-    , _rjLatestAMIId                 :: !(Maybe Text)
-    , _rjSeedReplicationTime         :: !(Maybe POSIX)
-    , _rjDescription                 :: !(Maybe Text)
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _rjFrequency                   :: !(Maybe Int)
+  , _rjState                       :: !(Maybe ReplicationJobState)
+  , _rjServerType                  :: !(Maybe ServerType)
+  , _rjServerId                    :: !(Maybe Text)
+  , _rjLicenseType                 :: !(Maybe LicenseType)
+  , _rjRoleName                    :: !(Maybe Text)
+  , _rjVmServer                    :: !(Maybe VMServer)
+  , _rjReplicationJobId            :: !(Maybe Text)
+  , _rjReplicationRunList          :: !(Maybe [ReplicationRun])
+  , _rjNextReplicationRunStartTime :: !(Maybe POSIX)
+  , _rjStatusMessage               :: !(Maybe Text)
+  , _rjLatestAMIId                 :: !(Maybe Text)
+  , _rjSeedReplicationTime         :: !(Maybe POSIX)
+  , _rjDescription                 :: !(Maybe Text)
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'ReplicationJob' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -189,23 +192,24 @@
 replicationJob
     :: ReplicationJob
 replicationJob =
-    ReplicationJob'
-    { _rjFrequency = Nothing
-    , _rjState = Nothing
-    , _rjServerType = Nothing
-    , _rjServerId = Nothing
-    , _rjLicenseType = Nothing
-    , _rjRoleName = Nothing
-    , _rjVmServer = Nothing
-    , _rjReplicationJobId = Nothing
-    , _rjReplicationRunList = Nothing
-    , _rjNextReplicationRunStartTime = Nothing
-    , _rjStatusMessage = Nothing
-    , _rjLatestAMIId = Nothing
-    , _rjSeedReplicationTime = Nothing
-    , _rjDescription = Nothing
-    }
+  ReplicationJob'
+  { _rjFrequency = Nothing
+  , _rjState = Nothing
+  , _rjServerType = Nothing
+  , _rjServerId = Nothing
+  , _rjLicenseType = Nothing
+  , _rjRoleName = Nothing
+  , _rjVmServer = Nothing
+  , _rjReplicationJobId = Nothing
+  , _rjReplicationRunList = Nothing
+  , _rjNextReplicationRunStartTime = Nothing
+  , _rjStatusMessage = Nothing
+  , _rjLatestAMIId = Nothing
+  , _rjSeedReplicationTime = Nothing
+  , _rjDescription = Nothing
+  }
 
+
 -- | Undocumented member.
 rjFrequency :: Lens' ReplicationJob (Maybe Int)
 rjFrequency = lens _rjFrequency (\ s a -> s{_rjFrequency = a});
@@ -281,24 +285,25 @@
                      <*> (x .:? "seedReplicationTime")
                      <*> (x .:? "description"))
 
-instance Hashable ReplicationJob
+instance Hashable ReplicationJob where
 
-instance NFData ReplicationJob
+instance NFData ReplicationJob where
 
 -- | Object representing a Replication Run
 --
 -- /See:/ 'replicationRun' smart constructor.
 data ReplicationRun = ReplicationRun'
-    { _rrState              :: !(Maybe ReplicationRunState)
-    , _rrReplicationRunId   :: !(Maybe Text)
-    , _rrScheduledStartTime :: !(Maybe POSIX)
-    , _rrStatusMessage      :: !(Maybe Text)
-    , _rrCompletedTime      :: !(Maybe POSIX)
-    , _rrAmiId              :: !(Maybe Text)
-    , _rrType               :: !(Maybe ReplicationRunType)
-    , _rrDescription        :: !(Maybe Text)
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _rrState              :: !(Maybe ReplicationRunState)
+  , _rrReplicationRunId   :: !(Maybe Text)
+  , _rrScheduledStartTime :: !(Maybe POSIX)
+  , _rrStatusMessage      :: !(Maybe Text)
+  , _rrCompletedTime      :: !(Maybe POSIX)
+  , _rrAmiId              :: !(Maybe Text)
+  , _rrType               :: !(Maybe ReplicationRunType)
+  , _rrDescription        :: !(Maybe Text)
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'ReplicationRun' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -321,17 +326,18 @@
 replicationRun
     :: ReplicationRun
 replicationRun =
-    ReplicationRun'
-    { _rrState = Nothing
-    , _rrReplicationRunId = Nothing
-    , _rrScheduledStartTime = Nothing
-    , _rrStatusMessage = Nothing
-    , _rrCompletedTime = Nothing
-    , _rrAmiId = Nothing
-    , _rrType = Nothing
-    , _rrDescription = Nothing
-    }
+  ReplicationRun'
+  { _rrState = Nothing
+  , _rrReplicationRunId = Nothing
+  , _rrScheduledStartTime = Nothing
+  , _rrStatusMessage = Nothing
+  , _rrCompletedTime = Nothing
+  , _rrAmiId = Nothing
+  , _rrType = Nothing
+  , _rrDescription = Nothing
+  }
 
+
 -- | Undocumented member.
 rrState :: Lens' ReplicationRun (Maybe ReplicationRunState)
 rrState = lens _rrState (\ s a -> s{_rrState = a});
@@ -377,21 +383,22 @@
                      <*> (x .:? "type")
                      <*> (x .:? "description"))
 
-instance Hashable ReplicationRun
+instance Hashable ReplicationRun where
 
-instance NFData ReplicationRun
+instance NFData ReplicationRun where
 
 -- | Object representing a server
 --
 -- /See:/ 'server' smart constructor.
 data Server = Server'
-    { _sServerType               :: !(Maybe ServerType)
-    , _sServerId                 :: !(Maybe Text)
-    , _sReplicationJobTerminated :: !(Maybe Bool)
-    , _sVmServer                 :: !(Maybe VMServer)
-    , _sReplicationJobId         :: !(Maybe Text)
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _sServerType               :: !(Maybe ServerType)
+  , _sServerId                 :: !(Maybe Text)
+  , _sReplicationJobTerminated :: !(Maybe Bool)
+  , _sVmServer                 :: !(Maybe VMServer)
+  , _sReplicationJobId         :: !(Maybe Text)
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'Server' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -408,14 +415,15 @@
 server
     :: Server
 server =
-    Server'
-    { _sServerType = Nothing
-    , _sServerId = Nothing
-    , _sReplicationJobTerminated = Nothing
-    , _sVmServer = Nothing
-    , _sReplicationJobId = Nothing
-    }
+  Server'
+  { _sServerType = Nothing
+  , _sServerId = Nothing
+  , _sReplicationJobTerminated = Nothing
+  , _sVmServer = Nothing
+  , _sReplicationJobId = Nothing
+  }
 
+
 -- | Undocumented member.
 sServerType :: Lens' Server (Maybe ServerType)
 sServerType = lens _sServerType (\ s a -> s{_sServerType = a});
@@ -446,21 +454,22 @@
                      <*> (x .:? "vmServer")
                      <*> (x .:? "replicationJobId"))
 
-instance Hashable Server
+instance Hashable Server where
 
-instance NFData Server
+instance NFData Server where
 
 -- | Object representing a VM server
 --
 -- /See:/ 'vMServer' smart constructor.
 data VMServer = VMServer'
-    { _vmsVmManagerName   :: !(Maybe Text)
-    , _vmsVmManagerType   :: !(Maybe VMManagerType)
-    , _vmsVmServerAddress :: !(Maybe VMServerAddress)
-    , _vmsVmName          :: !(Maybe Text)
-    , _vmsVmPath          :: !(Maybe Text)
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _vmsVmManagerName   :: !(Maybe Text)
+  , _vmsVmManagerType   :: !(Maybe VMManagerType)
+  , _vmsVmServerAddress :: !(Maybe VMServerAddress)
+  , _vmsVmName          :: !(Maybe Text)
+  , _vmsVmPath          :: !(Maybe Text)
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'VMServer' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -477,14 +486,15 @@
 vMServer
     :: VMServer
 vMServer =
-    VMServer'
-    { _vmsVmManagerName = Nothing
-    , _vmsVmManagerType = Nothing
-    , _vmsVmServerAddress = Nothing
-    , _vmsVmName = Nothing
-    , _vmsVmPath = Nothing
-    }
+  VMServer'
+  { _vmsVmManagerName = Nothing
+  , _vmsVmManagerType = Nothing
+  , _vmsVmServerAddress = Nothing
+  , _vmsVmName = Nothing
+  , _vmsVmPath = Nothing
+  }
 
+
 -- | Undocumented member.
 vmsVmManagerName :: Lens' VMServer (Maybe Text)
 vmsVmManagerName = lens _vmsVmManagerName (\ s a -> s{_vmsVmManagerName = a});
@@ -515,18 +525,19 @@
                      <*> (x .:? "vmName")
                      <*> (x .:? "vmPath"))
 
-instance Hashable VMServer
+instance Hashable VMServer where
 
-instance NFData VMServer
+instance NFData VMServer where
 
 -- | Object representing a server's location
 --
 -- /See:/ 'vMServerAddress' smart constructor.
 data VMServerAddress = VMServerAddress'
-    { _vmsaVmManagerId :: !(Maybe Text)
-    , _vmsaVmId        :: !(Maybe Text)
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _vmsaVmManagerId :: !(Maybe Text)
+  , _vmsaVmId        :: !(Maybe Text)
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'VMServerAddress' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -537,11 +548,9 @@
 vMServerAddress
     :: VMServerAddress
 vMServerAddress =
-    VMServerAddress'
-    { _vmsaVmManagerId = Nothing
-    , _vmsaVmId = Nothing
-    }
+  VMServerAddress' {_vmsaVmManagerId = Nothing, _vmsaVmId = Nothing}
 
+
 -- | Undocumented member.
 vmsaVmManagerId :: Lens' VMServerAddress (Maybe Text)
 vmsaVmManagerId = lens _vmsaVmManagerId (\ s a -> s{_vmsaVmManagerId = a});
@@ -557,6 +566,6 @@
                  VMServerAddress' <$>
                    (x .:? "vmManagerId") <*> (x .:? "vmId"))
 
-instance Hashable VMServerAddress
+instance Hashable VMServerAddress where
 
-instance NFData VMServerAddress
+instance NFData VMServerAddress where
diff --git a/gen/Network/AWS/SMS/Types/Sum.hs b/gen/Network/AWS/SMS/Types/Sum.hs
--- a/gen/Network/AWS/SMS/Types/Sum.hs
+++ b/gen/Network/AWS/SMS/Types/Sum.hs
@@ -9,21 +9,22 @@
 
 -- |
 -- Module      : Network.AWS.SMS.Types.Sum
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
 module Network.AWS.SMS.Types.Sum where
 
-import           Network.AWS.Prelude
+import Network.AWS.Prelude
 
 -- | Capabilities for a Connector
 data ConnectorCapability =
-    CCVsphere
-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
+  CCVsphere
+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
 
+
 instance FromText ConnectorCapability where
     parser = takeLowerText >>= \case
         "vsphere" -> pure CCVsphere
@@ -45,10 +46,11 @@
 
 -- | Status of on-premise Connector
 data ConnectorStatus
-    = Healthy
-    | Unhealthy
-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
+  = Healthy
+  | Unhealthy
+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
 
+
 instance FromText ConnectorStatus where
     parser = takeLowerText >>= \case
         "healthy" -> pure Healthy
@@ -72,10 +74,11 @@
 
 -- | The license type to be used for the Amazon Machine Image (AMI) created after a successful ReplicationRun.
 data LicenseType
-    = AWS
-    | Byol
-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
+  = AWS
+  | Byol
+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
 
+
 instance FromText LicenseType where
     parser = takeLowerText >>= \case
         "aws" -> pure AWS
@@ -102,13 +105,14 @@
 
 -- | Current state of Replication Job
 data ReplicationJobState
-    = RJSActive
-    | RJSDeleted
-    | RJSDeleting
-    | RJSFailed
-    | RJSPending
-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
+  = RJSActive
+  | RJSDeleted
+  | RJSDeleting
+  | RJSFailed
+  | RJSPending
+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
 
+
 instance FromText ReplicationJobState where
     parser = takeLowerText >>= \case
         "active" -> pure RJSActive
@@ -138,15 +142,16 @@
 
 -- | Current state of Replication Run
 data ReplicationRunState
-    = RRSActive
-    | RRSCompleted
-    | RRSDeleted
-    | RRSDeleting
-    | RRSFailed
-    | RRSMissed
-    | RRSPending
-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
+  = RRSActive
+  | RRSCompleted
+  | RRSDeleted
+  | RRSDeleting
+  | RRSFailed
+  | RRSMissed
+  | RRSPending
+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
 
+
 instance FromText ReplicationRunState where
     parser = takeLowerText >>= \case
         "active" -> pure RRSActive
@@ -180,10 +185,11 @@
 
 -- | Type of Replication Run
 data ReplicationRunType
-    = Automatic
-    | OnDemand
-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
+  = Automatic
+  | OnDemand
+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
 
+
 instance FromText ReplicationRunType where
     parser = takeLowerText >>= \case
         "automatic" -> pure Automatic
@@ -207,13 +213,14 @@
 
 -- | Status of Server catalog
 data ServerCatalogStatus
-    = Available
-    | Deleted
-    | Expired
-    | Importing
-    | NotImported
-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
+  = Available
+  | Deleted
+  | Expired
+  | Importing
+  | NotImported
+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
 
+
 instance FromText ServerCatalogStatus where
     parser = takeLowerText >>= \case
         "available" -> pure Available
@@ -243,9 +250,10 @@
 
 -- | Type of server.
 data ServerType =
-    VirtualMachine
-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
+  VirtualMachine
+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
 
+
 instance FromText ServerType where
     parser = takeLowerText >>= \case
         "virtual_machine" -> pure VirtualMachine
@@ -267,8 +275,9 @@
 
 -- | VM Management Product
 data VMManagerType =
-    Vsphere
-    deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
+  Vsphere
+  deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
+
 
 instance FromText VMManagerType where
     parser = takeLowerText >>= \case
diff --git a/gen/Network/AWS/SMS/UpdateReplicationJob.hs b/gen/Network/AWS/SMS/UpdateReplicationJob.hs
--- a/gen/Network/AWS/SMS/UpdateReplicationJob.hs
+++ b/gen/Network/AWS/SMS/UpdateReplicationJob.hs
@@ -12,9 +12,9 @@
 
 -- |
 -- Module      : Network.AWS.SMS.UpdateReplicationJob
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
@@ -39,23 +39,24 @@
     , urjrsResponseStatus
     ) where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.Request
-import           Network.AWS.Response
-import           Network.AWS.SMS.Types
-import           Network.AWS.SMS.Types.Product
+import Network.AWS.Lens
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+import Network.AWS.SMS.Types
+import Network.AWS.SMS.Types.Product
 
 -- | /See:/ 'updateReplicationJob' smart constructor.
 data UpdateReplicationJob = UpdateReplicationJob'
-    { _urjFrequency                   :: !(Maybe Int)
-    , _urjLicenseType                 :: !(Maybe LicenseType)
-    , _urjRoleName                    :: !(Maybe Text)
-    , _urjNextReplicationRunStartTime :: !(Maybe POSIX)
-    , _urjDescription                 :: !(Maybe Text)
-    , _urjReplicationJobId            :: !Text
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _urjFrequency                   :: !(Maybe Int)
+  , _urjLicenseType                 :: !(Maybe LicenseType)
+  , _urjRoleName                    :: !(Maybe Text)
+  , _urjNextReplicationRunStartTime :: !(Maybe POSIX)
+  , _urjDescription                 :: !(Maybe Text)
+  , _urjReplicationJobId            :: !Text
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'UpdateReplicationJob' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -75,15 +76,16 @@
     :: Text -- ^ 'urjReplicationJobId'
     -> UpdateReplicationJob
 updateReplicationJob pReplicationJobId_ =
-    UpdateReplicationJob'
-    { _urjFrequency = Nothing
-    , _urjLicenseType = Nothing
-    , _urjRoleName = Nothing
-    , _urjNextReplicationRunStartTime = Nothing
-    , _urjDescription = Nothing
-    , _urjReplicationJobId = pReplicationJobId_
-    }
+  UpdateReplicationJob'
+  { _urjFrequency = Nothing
+  , _urjLicenseType = Nothing
+  , _urjRoleName = Nothing
+  , _urjNextReplicationRunStartTime = Nothing
+  , _urjDescription = Nothing
+  , _urjReplicationJobId = pReplicationJobId_
+  }
 
+
 -- | Undocumented member.
 urjFrequency :: Lens' UpdateReplicationJob (Maybe Int)
 urjFrequency = lens _urjFrequency (\ s a -> s{_urjFrequency = a});
@@ -118,9 +120,9 @@
                  UpdateReplicationJobResponse' <$>
                    (pure (fromEnum s)))
 
-instance Hashable UpdateReplicationJob
+instance Hashable UpdateReplicationJob where
 
-instance NFData UpdateReplicationJob
+instance NFData UpdateReplicationJob where
 
 instance ToHeaders UpdateReplicationJob where
         toHeaders
@@ -152,9 +154,10 @@
 
 -- | /See:/ 'updateReplicationJobResponse' smart constructor.
 newtype UpdateReplicationJobResponse = UpdateReplicationJobResponse'
-    { _urjrsResponseStatus :: Int
-    } deriving (Eq,Read,Show,Data,Typeable,Generic)
+  { _urjrsResponseStatus :: Int
+  } deriving (Eq, Read, Show, Data, Typeable, Generic)
 
+
 -- | Creates a value of 'UpdateReplicationJobResponse' with the minimum fields required to make a request.
 --
 -- Use one of the following lenses to modify other fields as desired:
@@ -164,12 +167,11 @@
     :: Int -- ^ 'urjrsResponseStatus'
     -> UpdateReplicationJobResponse
 updateReplicationJobResponse pResponseStatus_ =
-    UpdateReplicationJobResponse'
-    { _urjrsResponseStatus = pResponseStatus_
-    }
+  UpdateReplicationJobResponse' {_urjrsResponseStatus = pResponseStatus_}
 
+
 -- | -- | The response status code.
 urjrsResponseStatus :: Lens' UpdateReplicationJobResponse Int
 urjrsResponseStatus = lens _urjrsResponseStatus (\ s a -> s{_urjrsResponseStatus = a});
 
-instance NFData UpdateReplicationJobResponse
+instance NFData UpdateReplicationJobResponse where
diff --git a/gen/Network/AWS/SMS/Waiters.hs b/gen/Network/AWS/SMS/Waiters.hs
--- a/gen/Network/AWS/SMS/Waiters.hs
+++ b/gen/Network/AWS/SMS/Waiters.hs
@@ -7,15 +7,15 @@
 
 -- |
 -- Module      : Network.AWS.SMS.Waiters
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
 module Network.AWS.SMS.Waiters where
 
-import           Network.AWS.Lens
-import           Network.AWS.Prelude
-import           Network.AWS.SMS.Types
-import           Network.AWS.Waiter
+import Network.AWS.Lens
+import Network.AWS.Prelude
+import Network.AWS.SMS.Types
+import Network.AWS.Waiter
diff --git a/test/Main.hs b/test/Main.hs
--- a/test/Main.hs
+++ b/test/Main.hs
@@ -2,9 +2,9 @@
 
 -- |
 -- Module      : Main
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
diff --git a/test/Test/AWS/Gen/SMS.hs b/test/Test/AWS/Gen/SMS.hs
--- a/test/Test/AWS/Gen/SMS.hs
+++ b/test/Test/AWS/Gen/SMS.hs
@@ -5,20 +5,20 @@
 
 -- |
 -- Module      : Test.AWS.Gen.SMS
--- Copyright   : (c) 2013-2016 Brendan Hay
+-- Copyright   : (c) 2013-2017 Brendan Hay
 -- License     : Mozilla Public License, v. 2.0.
--- Maintainer  : Brendan Hay <brendan.g.hay@gmail.com>
+-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
 module Test.AWS.Gen.SMS where
 
 import Data.Proxy
+import Network.AWS.SMS
 import Test.AWS.Fixture
 import Test.AWS.Prelude
-import Test.Tasty
-import Network.AWS.SMS
 import Test.AWS.SMS.Internal
+import Test.Tasty
 
 -- Auto-generated: the actual test selection needs to be manually placed into
 -- the top-level so that real test data can be incrementally added.
