diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -8,18 +8,20 @@
 
 ## Version
 
-`1.4.3`
+`1.4.4`
 
 
 ## Description
 
 Elastic Load Balancing
 
-Elastic Load Balancing distributes incoming traffic across your EC2 instances.
+A load balancer distributes incoming traffic across your EC2 instances. This enables you to increase the availability of your application. The load balancer also monitors the health of its registered instances and ensures that it routes traffic only to healthy instances. You configure your load balancer to accept incoming traffic by specifying one or more listeners, which are configured with a protocol and port number for connections from clients to the load balancer and a protocol and port number for connections from the load balancer to the instances.
 
-For information about the features of Elastic Load Balancing, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elastic-load-balancing.html What Is Elastic Load Balancing?> in the /Elastic Load Balancing Developer Guide/.
+Elastic Load Balancing supports two types of load balancers: Classic load balancers and Application load balancers (new). A Classic load balancer makes routing and load balancing decisions either at the transport layer (TCP\/SSL) or the application layer (HTTP\/HTTPS), and supports either EC2-Classic or a VPC. An Application load balancer makes routing and load balancing decisions at the application layer (HTTP\/HTTPS), supports path-based routing, and can route requests to one or more ports on each EC2 instance or container instance in your virtual private cloud (VPC). For more information, see the .
 
-For information about the AWS regions supported by Elastic Load Balancing, see <http://docs.aws.amazon.com/general/latest/gr/rande.html#elb_region Regions and Endpoints - Elastic Load Balancing> in the /Amazon Web Services General Reference/.
+This reference covers the 2012-06-01 API, which supports Classic load balancers. The 2015-12-01 API supports Application load balancers.
+
+To get started, create a load balancer with one or more listeners using < CreateLoadBalancer>. Register your instances with the load balancer using < RegisterInstancesWithLoadBalancer>.
 
 All Elastic Load Balancing operations are /idempotent/, which means that they complete at most one time. If you repeat an operation, it succeeds with a 200 OK response code.
 
diff --git a/amazonka-elb.cabal b/amazonka-elb.cabal
--- a/amazonka-elb.cabal
+++ b/amazonka-elb.cabal
@@ -1,5 +1,5 @@
 name:                  amazonka-elb
-version:               1.4.3
+version:               1.4.4
 synopsis:              Amazon Elastic Load Balancing SDK.
 homepage:              https://github.com/brendanhay/amazonka
 bug-reports:           https://github.com/brendanhay/amazonka/issues
@@ -11,16 +11,18 @@
 category:              Network, AWS, Cloud, Distributed Computing
 build-type:            Simple
 cabal-version:         >= 1.10
-extra-source-files:    README.md fixture/*.yaml fixture/*.proto
+extra-source-files:    README.md fixture/*.yaml fixture/*.proto src/.gitkeep
 description:
     Elastic Load Balancing
 
-    Elastic Load Balancing distributes incoming traffic across your EC2 instances.
+    A load balancer distributes incoming traffic across your EC2 instances. This enables you to increase the availability of your application. The load balancer also monitors the health of its registered instances and ensures that it routes traffic only to healthy instances. You configure your load balancer to accept incoming traffic by specifying one or more listeners, which are configured with a protocol and port number for connections from clients to the load balancer and a protocol and port number for connections from the load balancer to the instances.
 
-    For information about the features of Elastic Load Balancing, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elastic-load-balancing.html What Is Elastic Load Balancing?> in the /Elastic Load Balancing Developer Guide/.
+    Elastic Load Balancing supports two types of load balancers: Classic load balancers and Application load balancers (new). A Classic load balancer makes routing and load balancing decisions either at the transport layer (TCP\/SSL) or the application layer (HTTP\/HTTPS), and supports either EC2-Classic or a VPC. An Application load balancer makes routing and load balancing decisions at the application layer (HTTP\/HTTPS), supports path-based routing, and can route requests to one or more ports on each EC2 instance or container instance in your virtual private cloud (VPC). For more information, see the .
 
-    For information about the AWS regions supported by Elastic Load Balancing, see <http://docs.aws.amazon.com/general/latest/gr/rande.html#elb_region Regions and Endpoints - Elastic Load Balancing> in the /Amazon Web Services General Reference/.
+    This reference covers the 2012-06-01 API, which supports Classic load balancers. The 2015-12-01 API supports Application load balancers.
 
+    To get started, create a load balancer with one or more listeners using < CreateLoadBalancer>. Register your instances with the load balancer using < RegisterInstancesWithLoadBalancer>.
+
     All Elastic Load Balancing operations are /idempotent/, which means that they complete at most one time. If you repeat an operation, it succeeds with a 200 OK response code.
     .
     The types from this library are intended to be used with
@@ -85,7 +87,7 @@
         , Network.AWS.ELB.Types.Sum
 
     build-depends:
-          amazonka-core == 1.4.3.*
+          amazonka-core == 1.4.4.*
         , base          >= 4.7     && < 5
 
 test-suite amazonka-elb-test
@@ -105,9 +107,9 @@
         , Test.AWS.ELB.Internal
 
     build-depends:
-          amazonka-core == 1.4.3.*
-        , amazonka-test == 1.4.3.*
-        , amazonka-elb == 1.4.3.*
+          amazonka-core == 1.4.4.*
+        , amazonka-test == 1.4.4.*
+        , amazonka-elb == 1.4.4.*
         , base
         , bytestring
         , tasty
diff --git a/gen/Network/AWS/ELB.hs b/gen/Network/AWS/ELB.hs
--- a/gen/Network/AWS/ELB.hs
+++ b/gen/Network/AWS/ELB.hs
@@ -13,12 +13,14 @@
 --
 -- Elastic Load Balancing
 --
--- Elastic Load Balancing distributes incoming traffic across your EC2 instances.
+-- A load balancer distributes incoming traffic across your EC2 instances. This enables you to increase the availability of your application. The load balancer also monitors the health of its registered instances and ensures that it routes traffic only to healthy instances. You configure your load balancer to accept incoming traffic by specifying one or more listeners, which are configured with a protocol and port number for connections from clients to the load balancer and a protocol and port number for connections from the load balancer to the instances.
 --
--- For information about the features of Elastic Load Balancing, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elastic-load-balancing.html What Is Elastic Load Balancing?> in the /Elastic Load Balancing Developer Guide/.
+-- Elastic Load Balancing supports two types of load balancers: Classic load balancers and Application load balancers (new). A Classic load balancer makes routing and load balancing decisions either at the transport layer (TCP\/SSL) or the application layer (HTTP\/HTTPS), and supports either EC2-Classic or a VPC. An Application load balancer makes routing and load balancing decisions at the application layer (HTTP\/HTTPS), supports path-based routing, and can route requests to one or more ports on each EC2 instance or container instance in your virtual private cloud (VPC). For more information, see the .
 --
--- For information about the AWS regions supported by Elastic Load Balancing, see <http://docs.aws.amazon.com/general/latest/gr/rande.html#elb_region Regions and Endpoints - Elastic Load Balancing> in the /Amazon Web Services General Reference/.
+-- This reference covers the 2012-06-01 API, which supports Classic load balancers. The 2015-12-01 API supports Application load balancers.
 --
+-- To get started, create a load balancer with one or more listeners using < CreateLoadBalancer>. Register your instances with the load balancer using < RegisterInstancesWithLoadBalancer>.
+--
 -- All Elastic Load Balancing operations are /idempotent/, which means that they complete at most one time. If you repeat an operation, it succeeds with a 200 OK response code.
 module Network.AWS.ELB
     (
@@ -61,6 +63,9 @@
     -- ** PolicyTypeNotFoundException
     , _PolicyTypeNotFoundException
 
+    -- ** UnsupportedProtocolException
+    , _UnsupportedProtocolException
+
     -- ** DuplicateAccessPointNameException
     , _DuplicateAccessPointNameException
 
@@ -72,6 +77,9 @@
 
     -- ** InvalidEndPointException
     , _InvalidEndPointException
+
+    -- ** DependencyThrottleException
+    , _DependencyThrottleException
 
     -- ** InvalidSchemeException
     , _InvalidSchemeException
diff --git a/gen/Network/AWS/ELB/AddTags.hs b/gen/Network/AWS/ELB/AddTags.hs
--- a/gen/Network/AWS/ELB/AddTags.hs
+++ b/gen/Network/AWS/ELB/AddTags.hs
@@ -22,7 +22,7 @@
 --
 -- Each tag consists of a key and an optional value. If a tag with the same key is already associated with the load balancer, 'AddTags' updates its value.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/add-remove-tags.html Tag Your Load Balancer> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/add-remove-tags.html Tag Your Classic Load Balancer> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.AddTags
     (
     -- * Creating a Request
@@ -46,7 +46,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'addTags' smart constructor.
+-- | Contains the parameters for AddTags.
+--
+-- /See:/ 'addTags' smart constructor.
 data AddTags = AddTags'
     { _atLoadBalancerNames :: ![Text]
     , _atTags              :: !(List1 Tag)
@@ -102,7 +104,9 @@
                  toQueryList "member" _atLoadBalancerNames,
                "Tags" =: toQueryList "member" _atTags]
 
--- | /See:/ 'addTagsResponse' smart constructor.
+-- | Contains the output of AddTags.
+--
+-- /See:/ 'addTagsResponse' smart constructor.
 newtype AddTagsResponse = AddTagsResponse'
     { _atrsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/ApplySecurityGroupsToLoadBalancer.hs b/gen/Network/AWS/ELB/ApplySecurityGroupsToLoadBalancer.hs
--- a/gen/Network/AWS/ELB/ApplySecurityGroupsToLoadBalancer.hs
+++ b/gen/Network/AWS/ELB/ApplySecurityGroupsToLoadBalancer.hs
@@ -20,7 +20,7 @@
 --
 -- Associates one or more security groups with your load balancer in a virtual private cloud (VPC). The specified security groups override the previously associated security groups.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-security-groups.html#elb-vpc-security-groups Security Groups for Load Balancers in a VPC> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-security-groups.html#elb-vpc-security-groups Security Groups for Load Balancers in a VPC> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.ApplySecurityGroupsToLoadBalancer
     (
     -- * Creating a Request
@@ -45,7 +45,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'applySecurityGroupsToLoadBalancer' smart constructor.
+-- | Contains the parameters for ApplySecurityGroupsToLoadBalancer.
+--
+-- /See:/ 'applySecurityGroupsToLoadBalancer' smart constructor.
 data ApplySecurityGroupsToLoadBalancer = ApplySecurityGroupsToLoadBalancer'
     { _asgtlbLoadBalancerName :: !Text
     , _asgtlbSecurityGroups   :: ![Text]
@@ -112,7 +114,9 @@
                "SecurityGroups" =:
                  toQueryList "member" _asgtlbSecurityGroups]
 
--- | /See:/ 'applySecurityGroupsToLoadBalancerResponse' smart constructor.
+-- | Contains the output of ApplySecurityGroupsToLoadBalancer.
+--
+-- /See:/ 'applySecurityGroupsToLoadBalancerResponse' smart constructor.
 data ApplySecurityGroupsToLoadBalancerResponse = ApplySecurityGroupsToLoadBalancerResponse'
     { _asgtlbrsSecurityGroups :: !(Maybe [Text])
     , _asgtlbrsResponseStatus :: !Int
diff --git a/gen/Network/AWS/ELB/AttachLoadBalancerToSubnets.hs b/gen/Network/AWS/ELB/AttachLoadBalancerToSubnets.hs
--- a/gen/Network/AWS/ELB/AttachLoadBalancerToSubnets.hs
+++ b/gen/Network/AWS/ELB/AttachLoadBalancerToSubnets.hs
@@ -20,7 +20,7 @@
 --
 -- Adds one or more subnets to the set of configured subnets for the specified load balancer.
 --
--- The load balancer evenly distributes requests across all registered subnets. For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-manage-subnets.html Add or Remove Subnets for Your Load Balancer in a VPC> in the /Elastic Load Balancing Developer Guide/.
+-- The load balancer evenly distributes requests across all registered subnets. For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-manage-subnets.html Add or Remove Subnets for Your Load Balancer in a VPC> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.AttachLoadBalancerToSubnets
     (
     -- * Creating a Request
@@ -45,7 +45,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'attachLoadBalancerToSubnets' smart constructor.
+-- | Contains the parameters for AttachLoaBalancerToSubnets.
+--
+-- /See:/ 'attachLoadBalancerToSubnets' smart constructor.
 data AttachLoadBalancerToSubnets = AttachLoadBalancerToSubnets'
     { _albtsLoadBalancerName :: !Text
     , _albtsSubnets          :: ![Text]
@@ -71,7 +73,7 @@
 albtsLoadBalancerName :: Lens' AttachLoadBalancerToSubnets Text
 albtsLoadBalancerName = lens _albtsLoadBalancerName (\ s a -> s{_albtsLoadBalancerName = a});
 
--- | The IDs of the subnets to add for the load balancer. You can add only one subnet per Availability Zone.
+-- | The IDs of the subnets to add. You can add only one subnet per Availability Zone.
 albtsSubnets :: Lens' AttachLoadBalancerToSubnets [Text]
 albtsSubnets = lens _albtsSubnets (\ s a -> s{_albtsSubnets = a}) . _Coerce;
 
@@ -107,7 +109,9 @@
                "LoadBalancerName" =: _albtsLoadBalancerName,
                "Subnets" =: toQueryList "member" _albtsSubnets]
 
--- | /See:/ 'attachLoadBalancerToSubnetsResponse' smart constructor.
+-- | Contains the output of AttachLoadBalancerToSubnets.
+--
+-- /See:/ 'attachLoadBalancerToSubnetsResponse' smart constructor.
 data AttachLoadBalancerToSubnetsResponse = AttachLoadBalancerToSubnetsResponse'
     { _albtsrsSubnets        :: !(Maybe [Text])
     , _albtsrsResponseStatus :: !Int
diff --git a/gen/Network/AWS/ELB/ConfigureHealthCheck.hs b/gen/Network/AWS/ELB/ConfigureHealthCheck.hs
--- a/gen/Network/AWS/ELB/ConfigureHealthCheck.hs
+++ b/gen/Network/AWS/ELB/ConfigureHealthCheck.hs
@@ -18,9 +18,9 @@
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
--- Specifies the health check settings to use when evaluating the health state of your back-end instances.
+-- Specifies the health check settings to use when evaluating the health state of your EC2 instances.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-healthchecks.html Configure Health Checks> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-healthchecks.html Configure Health Checks for Your Load Balancer> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.ConfigureHealthCheck
     (
     -- * Creating a Request
@@ -45,7 +45,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'configureHealthCheck' smart constructor.
+-- | Contains the parameters for ConfigureHealthCheck.
+--
+-- /See:/ 'configureHealthCheck' smart constructor.
 data ConfigureHealthCheck = ConfigureHealthCheck'
     { _chcLoadBalancerName :: !Text
     , _chcHealthCheck      :: !HealthCheck
@@ -72,7 +74,7 @@
 chcLoadBalancerName :: Lens' ConfigureHealthCheck Text
 chcLoadBalancerName = lens _chcLoadBalancerName (\ s a -> s{_chcLoadBalancerName = a});
 
--- | The configuration information for the new health check.
+-- | The configuration information.
 chcHealthCheck :: Lens' ConfigureHealthCheck HealthCheck
 chcHealthCheck = lens _chcHealthCheck (\ s a -> s{_chcHealthCheck = a});
 
@@ -104,7 +106,9 @@
                "LoadBalancerName" =: _chcLoadBalancerName,
                "HealthCheck" =: _chcHealthCheck]
 
--- | /See:/ 'configureHealthCheckResponse' smart constructor.
+-- | Contains the output of ConfigureHealthCheck.
+--
+-- /See:/ 'configureHealthCheckResponse' smart constructor.
 data ConfigureHealthCheckResponse = ConfigureHealthCheckResponse'
     { _chcrsHealthCheck    :: !(Maybe HealthCheck)
     , _chcrsResponseStatus :: !Int
diff --git a/gen/Network/AWS/ELB/CreateAppCookieStickinessPolicy.hs b/gen/Network/AWS/ELB/CreateAppCookieStickinessPolicy.hs
--- a/gen/Network/AWS/ELB/CreateAppCookieStickinessPolicy.hs
+++ b/gen/Network/AWS/ELB/CreateAppCookieStickinessPolicy.hs
@@ -24,7 +24,7 @@
 --
 -- If the application cookie is explicitly removed or expires, the session stops being sticky until a new application cookie is issued.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-sticky-sessions.html#enable-sticky-sessions-application Application-Controlled Session Stickiness> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-sticky-sessions.html#enable-sticky-sessions-application Application-Controlled Session Stickiness> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.CreateAppCookieStickinessPolicy
     (
     -- * Creating a Request
@@ -49,7 +49,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'createAppCookieStickinessPolicy' smart constructor.
+-- | Contains the parameters for CreateAppCookieStickinessPolicy.
+--
+-- /See:/ 'createAppCookieStickinessPolicy' smart constructor.
 data CreateAppCookieStickinessPolicy = CreateAppCookieStickinessPolicy'
     { _cacspLoadBalancerName :: !Text
     , _cacspPolicyName       :: !Text
@@ -123,7 +125,9 @@
                "PolicyName" =: _cacspPolicyName,
                "CookieName" =: _cacspCookieName]
 
--- | /See:/ 'createAppCookieStickinessPolicyResponse' smart constructor.
+-- | Contains the output for CreateAppCookieStickinessPolicy.
+--
+-- /See:/ 'createAppCookieStickinessPolicyResponse' smart constructor.
 newtype CreateAppCookieStickinessPolicyResponse = CreateAppCookieStickinessPolicyResponse'
     { _cacsprsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/CreateLBCookieStickinessPolicy.hs b/gen/Network/AWS/ELB/CreateLBCookieStickinessPolicy.hs
--- a/gen/Network/AWS/ELB/CreateLBCookieStickinessPolicy.hs
+++ b/gen/Network/AWS/ELB/CreateLBCookieStickinessPolicy.hs
@@ -20,11 +20,11 @@
 --
 -- Generates a stickiness policy with sticky session lifetimes controlled by the lifetime of the browser (user-agent) or a specified expiration period. This policy can be associated only with HTTP\/HTTPS listeners.
 --
--- When a load balancer implements this policy, the load balancer uses a special cookie to track the back-end server instance for each request. When the load balancer receives a request, it first checks to see if this cookie is present in the request. If so, the load balancer sends the request to the application server specified in the cookie. If not, the load balancer sends the request to a server that is chosen based on the existing load-balancing algorithm.
+-- When a load balancer implements this policy, the load balancer uses a special cookie to track the instance for each request. When the load balancer receives a request, it first checks to see if this cookie is present in the request. If so, the load balancer sends the request to the application server specified in the cookie. If not, the load balancer sends the request to a server that is chosen based on the existing load-balancing algorithm.
 --
 -- A cookie is inserted into the response for binding subsequent requests from the same user to that server. The validity of the cookie is based on the cookie expiration time, which is specified in the policy configuration.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-sticky-sessions.html#enable-sticky-sessions-duration Duration-Based Session Stickiness> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-sticky-sessions.html#enable-sticky-sessions-duration Duration-Based Session Stickiness> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.CreateLBCookieStickinessPolicy
     (
     -- * Creating a Request
@@ -49,7 +49,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'createLBCookieStickinessPolicy' smart constructor.
+-- | Contains the parameters for CreateLBCookieStickinessPolicy.
+--
+-- /See:/ 'createLBCookieStickinessPolicy' smart constructor.
 data CreateLBCookieStickinessPolicy = CreateLBCookieStickinessPolicy'
     { _clbcspCookieExpirationPeriod :: !(Maybe Integer)
     , _clbcspLoadBalancerName       :: !Text
@@ -76,7 +78,7 @@
     , _clbcspPolicyName = pPolicyName_
     }
 
--- | The time period, in seconds, after which the cookie should be considered stale. If you do not specify this parameter, the sticky session lasts for the duration of the browser session.
+-- | The time period, in seconds, after which the cookie should be considered stale. If you do not specify this parameter, the default value is 0, which indicates that the sticky session should last for the duration of the browser session.
 clbcspCookieExpirationPeriod :: Lens' CreateLBCookieStickinessPolicy (Maybe Integer)
 clbcspCookieExpirationPeriod = lens _clbcspCookieExpirationPeriod (\ s a -> s{_clbcspCookieExpirationPeriod = a});
 
@@ -122,7 +124,9 @@
                "LoadBalancerName" =: _clbcspLoadBalancerName,
                "PolicyName" =: _clbcspPolicyName]
 
--- | /See:/ 'createLBCookieStickinessPolicyResponse' smart constructor.
+-- | Contains the output for CreateLBCookieStickinessPolicy.
+--
+-- /See:/ 'createLBCookieStickinessPolicyResponse' smart constructor.
 newtype CreateLBCookieStickinessPolicyResponse = CreateLBCookieStickinessPolicyResponse'
     { _clbcsprsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/CreateLoadBalancer.hs b/gen/Network/AWS/ELB/CreateLoadBalancer.hs
--- a/gen/Network/AWS/ELB/CreateLoadBalancer.hs
+++ b/gen/Network/AWS/ELB/CreateLoadBalancer.hs
@@ -18,11 +18,13 @@
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
--- Creates a load balancer.
+-- Creates a Classic load balancer.
 --
--- If the call completes successfully, a new load balancer is created with a unique Domain Name Service (DNS) name. The load balancer receives incoming traffic and routes it to the registered instances. For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/how-elb-works.html How Elastic Load Balancing Works> in the /Elastic Load Balancing Developer Guide/.
+-- You can add listeners, security groups, subnets, and tags when you create your load balancer, or you can add them later using < CreateLoadBalancerListeners>, < ApplySecurityGroupsToLoadBalancer>, < AttachLoadBalancerToSubnets>, and < AddTags>.
 --
--- You can create up to 20 load balancers per region per account. You can request an increase for the number of load balancers for your account. For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-limits.html Elastic Load Balancing Limits> in the /Elastic Load Balancing Developer Guide/.
+-- To describe your current load balancers, see < DescribeLoadBalancers>. When you are finished with a load balancer, you can delete it using < DeleteLoadBalancer>.
+--
+-- You can create up to 20 load balancers per region per account. You can request an increase for the number of load balancers for your account. For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-limits.html Limits for Your Classic Load Balancer> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.CreateLoadBalancer
     (
     -- * Creating a Request
@@ -52,7 +54,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'createLoadBalancer' smart constructor.
+-- | Contains the parameters for CreateLoadBalancer.
+--
+-- /See:/ 'createLoadBalancer' smart constructor.
 data CreateLoadBalancer = CreateLoadBalancer'
     { _clbSecurityGroups    :: !(Maybe [Text])
     , _clbSubnets           :: !(Maybe [Text])
@@ -102,7 +106,7 @@
 clbSubnets :: Lens' CreateLoadBalancer [Text]
 clbSubnets = lens _clbSubnets (\ s a -> s{_clbSubnets = a}) . _Default . _Coerce;
 
--- | One or more Availability Zones from the same region as the load balancer. Traffic is equally distributed across all specified Availability Zones.
+-- | One or more Availability Zones from the same region as the load balancer.
 --
 -- You must specify at least one Availability Zone.
 --
@@ -112,15 +116,15 @@
 
 -- | The type of a load balancer. Valid only for load balancers in a VPC.
 --
--- By default, Elastic Load Balancing creates an Internet-facing load balancer with a publicly resolvable DNS name, which resolves to public IP addresses. For more information about Internet-facing and Internal load balancers, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/vpc-loadbalancer-types.html Internet-facing and Internal Load Balancers> in the /Elastic Load Balancing Developer Guide/.
+-- By default, Elastic Load Balancing creates an Internet-facing load balancer with a DNS name that resolves to public IP addresses. For more information about Internet-facing and Internal load balancers, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html#load-balancer-scheme Load Balancer Scheme> in the /Elastic Load Balancing User Guide/.
 --
--- Specify 'internal' to create an internal load balancer with a DNS name that resolves to private IP addresses.
+-- Specify 'internal' to create a load balancer with a DNS name that resolves to private IP addresses.
 clbScheme :: Lens' CreateLoadBalancer (Maybe Text)
 clbScheme = lens _clbScheme (\ s a -> s{_clbScheme = a});
 
 -- | A list of tags to assign to the load balancer.
 --
--- For more information about tagging your load balancer, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#tagging-elb Tagging> in the /Elastic Load Balancing Developer Guide/.
+-- For more information about tagging your load balancer, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/add-remove-tags.html Tag Your Classic Load Balancer> in the /Classic Load Balancers Guide/.
 clbTags :: Lens' CreateLoadBalancer (Maybe (NonEmpty Tag))
 clbTags = lens _clbTags (\ s a -> s{_clbTags = a}) . mapping _List1;
 
@@ -132,7 +136,7 @@
 
 -- | The listeners.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-listener-config.html Listeners for Your Load Balancer> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html Listeners for Your Classic Load Balancer> in the /Classic Load Balancers Guide/.
 clbListeners :: Lens' CreateLoadBalancer [Listener]
 clbListeners = lens _clbListeners (\ s a -> s{_clbListeners = a}) . _Coerce;
 
@@ -175,7 +179,9 @@
                "LoadBalancerName" =: _clbLoadBalancerName,
                "Listeners" =: toQueryList "member" _clbListeners]
 
--- | /See:/ 'createLoadBalancerResponse' smart constructor.
+-- | Contains the output for CreateLoadBalancer.
+--
+-- /See:/ 'createLoadBalancerResponse' smart constructor.
 data CreateLoadBalancerResponse = CreateLoadBalancerResponse'
     { _clbrsDNSName        :: !(Maybe Text)
     , _clbrsResponseStatus :: !Int
diff --git a/gen/Network/AWS/ELB/CreateLoadBalancerListeners.hs b/gen/Network/AWS/ELB/CreateLoadBalancerListeners.hs
--- a/gen/Network/AWS/ELB/CreateLoadBalancerListeners.hs
+++ b/gen/Network/AWS/ELB/CreateLoadBalancerListeners.hs
@@ -20,7 +20,7 @@
 --
 -- Creates one or more listeners for the specified load balancer. If a listener with the specified port does not already exist, it is created; otherwise, the properties of the new listener must match the properties of the existing listener.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/us-add-listener.html Add a Listener to Your Load Balancer> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html Listeners for Your Classic Load Balancer> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.CreateLoadBalancerListeners
     (
     -- * Creating a Request
@@ -44,7 +44,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'createLoadBalancerListeners' smart constructor.
+-- | Contains the parameters for CreateLoadBalancerListeners.
+--
+-- /See:/ 'createLoadBalancerListeners' smart constructor.
 data CreateLoadBalancerListeners = CreateLoadBalancerListeners'
     { _clblLoadBalancerName :: !Text
     , _clblListeners        :: ![Listener]
@@ -104,7 +106,9 @@
                "LoadBalancerName" =: _clblLoadBalancerName,
                "Listeners" =: toQueryList "member" _clblListeners]
 
--- | /See:/ 'createLoadBalancerListenersResponse' smart constructor.
+-- | Contains the parameters for CreateLoadBalancerListener.
+--
+-- /See:/ 'createLoadBalancerListenersResponse' smart constructor.
 newtype CreateLoadBalancerListenersResponse = CreateLoadBalancerListenersResponse'
     { _clblrsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/CreateLoadBalancerPolicy.hs b/gen/Network/AWS/ELB/CreateLoadBalancerPolicy.hs
--- a/gen/Network/AWS/ELB/CreateLoadBalancerPolicy.hs
+++ b/gen/Network/AWS/ELB/CreateLoadBalancerPolicy.hs
@@ -20,7 +20,7 @@
 --
 -- Creates a policy with the specified attributes for the specified load balancer.
 --
--- Policies are settings that are saved for your load balancer and that can be applied to the front-end listener or the back-end application server, depending on the policy type.
+-- Policies are settings that are saved for your load balancer and that can be applied to the listener or the application server, depending on the policy type.
 module Network.AWS.ELB.CreateLoadBalancerPolicy
     (
     -- * Creating a Request
@@ -46,7 +46,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'createLoadBalancerPolicy' smart constructor.
+-- | Contains the parameters for CreateLoadBalancerPolicy.
+--
+-- /See:/ 'createLoadBalancerPolicy' smart constructor.
 data CreateLoadBalancerPolicy = CreateLoadBalancerPolicy'
     { _clbpPolicyAttributes :: !(Maybe [PolicyAttribute])
     , _clbpLoadBalancerName :: !Text
@@ -78,7 +80,7 @@
     , _clbpPolicyTypeName = pPolicyTypeName_
     }
 
--- | The attributes for the policy.
+-- | The policy attributes.
 clbpPolicyAttributes :: Lens' CreateLoadBalancerPolicy [PolicyAttribute]
 clbpPolicyAttributes = lens _clbpPolicyAttributes (\ s a -> s{_clbpPolicyAttributes = a}) . _Default . _Coerce;
 
@@ -127,7 +129,9 @@
                "PolicyName" =: _clbpPolicyName,
                "PolicyTypeName" =: _clbpPolicyTypeName]
 
--- | /See:/ 'createLoadBalancerPolicyResponse' smart constructor.
+-- | Contains the output of CreateLoadBalancerPolicy.
+--
+-- /See:/ 'createLoadBalancerPolicyResponse' smart constructor.
 newtype CreateLoadBalancerPolicyResponse = CreateLoadBalancerPolicyResponse'
     { _clbprsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/DeleteLoadBalancer.hs b/gen/Network/AWS/ELB/DeleteLoadBalancer.hs
--- a/gen/Network/AWS/ELB/DeleteLoadBalancer.hs
+++ b/gen/Network/AWS/ELB/DeleteLoadBalancer.hs
@@ -20,7 +20,7 @@
 --
 -- Deletes the specified load balancer.
 --
--- If you are attempting to recreate a load balancer, you must reconfigure all settings. The DNS name associated with a deleted load balancer are no longer usable. The name and associated DNS record of the deleted load balancer no longer exist and traffic sent to any of its IP addresses is no longer delivered to back-end instances.
+-- If you are attempting to recreate a load balancer, you must reconfigure all settings. The DNS name associated with a deleted load balancer are no longer usable. The name and associated DNS record of the deleted load balancer no longer exist and traffic sent to any of its IP addresses is no longer delivered to your instances.
 --
 -- If the load balancer does not exist or has already been deleted, the call to 'DeleteLoadBalancer' still succeeds.
 module Network.AWS.ELB.DeleteLoadBalancer
@@ -45,7 +45,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'deleteLoadBalancer' smart constructor.
+-- | Contains the parameters for DeleteLoadBalancer.
+--
+-- /See:/ 'deleteLoadBalancer' smart constructor.
 newtype DeleteLoadBalancer = DeleteLoadBalancer'
     { _dlbLoadBalancerName :: Text
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
@@ -93,7 +95,9 @@
                "Version" =: ("2012-06-01" :: ByteString),
                "LoadBalancerName" =: _dlbLoadBalancerName]
 
--- | /See:/ 'deleteLoadBalancerResponse' smart constructor.
+-- | Contains the output of DeleteLoadBalancer.
+--
+-- /See:/ 'deleteLoadBalancerResponse' smart constructor.
 newtype DeleteLoadBalancerResponse = DeleteLoadBalancerResponse'
     { _drsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/DeleteLoadBalancerListeners.hs b/gen/Network/AWS/ELB/DeleteLoadBalancerListeners.hs
--- a/gen/Network/AWS/ELB/DeleteLoadBalancerListeners.hs
+++ b/gen/Network/AWS/ELB/DeleteLoadBalancerListeners.hs
@@ -42,7 +42,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'deleteLoadBalancerListeners' smart constructor.
+-- | Contains the parameters for DeleteLoadBalancerListeners.
+--
+-- /See:/ 'deleteLoadBalancerListeners' smart constructor.
 data DeleteLoadBalancerListeners = DeleteLoadBalancerListeners'
     { _dlblLoadBalancerName  :: !Text
     , _dlblLoadBalancerPorts :: ![Int]
@@ -103,7 +105,9 @@
                "LoadBalancerPorts" =:
                  toQueryList "member" _dlblLoadBalancerPorts]
 
--- | /See:/ 'deleteLoadBalancerListenersResponse' smart constructor.
+-- | Contains the output of DeleteLoadBalancerListeners.
+--
+-- /See:/ 'deleteLoadBalancerListenersResponse' smart constructor.
 newtype DeleteLoadBalancerListenersResponse = DeleteLoadBalancerListenersResponse'
     { _dlblrsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/DeleteLoadBalancerPolicy.hs b/gen/Network/AWS/ELB/DeleteLoadBalancerPolicy.hs
--- a/gen/Network/AWS/ELB/DeleteLoadBalancerPolicy.hs
+++ b/gen/Network/AWS/ELB/DeleteLoadBalancerPolicy.hs
@@ -42,7 +42,7 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | =
+-- | Contains the parameters for DeleteLoadBalancerPolicy.
 --
 -- /See:/ 'deleteLoadBalancerPolicy' smart constructor.
 data DeleteLoadBalancerPolicy = DeleteLoadBalancerPolicy'
@@ -104,7 +104,9 @@
                "LoadBalancerName" =: _dLoadBalancerName,
                "PolicyName" =: _dPolicyName]
 
--- | /See:/ 'deleteLoadBalancerPolicyResponse' smart constructor.
+-- | Contains the output of DeleteLoadBalancerPolicy.
+--
+-- /See:/ 'deleteLoadBalancerPolicyResponse' smart constructor.
 newtype DeleteLoadBalancerPolicyResponse = DeleteLoadBalancerPolicyResponse'
     { _delrsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/DeregisterInstancesFromLoadBalancer.hs b/gen/Network/AWS/ELB/DeregisterInstancesFromLoadBalancer.hs
--- a/gen/Network/AWS/ELB/DeregisterInstancesFromLoadBalancer.hs
+++ b/gen/Network/AWS/ELB/DeregisterInstancesFromLoadBalancer.hs
@@ -22,7 +22,7 @@
 --
 -- You can use < DescribeLoadBalancers> to verify that the instance is deregistered from the load balancer.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_DeReg_Reg_Instances.html Deregister and Register Amazon EC2 Instances> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-deregister-register-instances.html Register or De-Register EC2 Instances> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.DeregisterInstancesFromLoadBalancer
     (
     -- * Creating a Request
@@ -47,7 +47,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'deregisterInstancesFromLoadBalancer' smart constructor.
+-- | Contains the parameters for DeregisterInstancesFromLoadBalancer.
+--
+-- /See:/ 'deregisterInstancesFromLoadBalancer' smart constructor.
 data DeregisterInstancesFromLoadBalancer = DeregisterInstancesFromLoadBalancer'
     { _diflbLoadBalancerName :: !Text
     , _diflbInstances        :: ![Instance]
@@ -114,7 +116,9 @@
                "LoadBalancerName" =: _diflbLoadBalancerName,
                "Instances" =: toQueryList "member" _diflbInstances]
 
--- | /See:/ 'deregisterInstancesFromLoadBalancerResponse' smart constructor.
+-- | Contains the output of DeregisterInstancesFromLoadBalancer.
+--
+-- /See:/ 'deregisterInstancesFromLoadBalancerResponse' smart constructor.
 data DeregisterInstancesFromLoadBalancerResponse = DeregisterInstancesFromLoadBalancerResponse'
     { _diflbrsInstances      :: !(Maybe [Instance])
     , _diflbrsResponseStatus :: !Int
diff --git a/gen/Network/AWS/ELB/DescribeInstanceHealth.hs b/gen/Network/AWS/ELB/DescribeInstanceHealth.hs
--- a/gen/Network/AWS/ELB/DescribeInstanceHealth.hs
+++ b/gen/Network/AWS/ELB/DescribeInstanceHealth.hs
@@ -43,7 +43,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'describeInstanceHealth' smart constructor.
+-- | Contains the parameters for DescribeInstanceHealth.
+--
+-- /See:/ 'describeInstanceHealth' smart constructor.
 data DescribeInstanceHealth = DescribeInstanceHealth'
     { _dihInstances        :: !(Maybe [Instance])
     , _dihLoadBalancerName :: !Text
@@ -105,7 +107,9 @@
                  toQuery (toQueryList "member" <$> _dihInstances),
                "LoadBalancerName" =: _dihLoadBalancerName]
 
--- | /See:/ 'describeInstanceHealthResponse' smart constructor.
+-- | Contains the output for DescribeInstanceHealth.
+--
+-- /See:/ 'describeInstanceHealthResponse' smart constructor.
 data DescribeInstanceHealthResponse = DescribeInstanceHealthResponse'
     { _dihrsInstanceStates :: !(Maybe [InstanceState])
     , _dihrsResponseStatus :: !Int
diff --git a/gen/Network/AWS/ELB/DescribeLoadBalancerAttributes.hs b/gen/Network/AWS/ELB/DescribeLoadBalancerAttributes.hs
--- a/gen/Network/AWS/ELB/DescribeLoadBalancerAttributes.hs
+++ b/gen/Network/AWS/ELB/DescribeLoadBalancerAttributes.hs
@@ -42,7 +42,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'describeLoadBalancerAttributes' smart constructor.
+-- | Contains the parameters for DescribeLoadBalancerAttributes.
+--
+-- /See:/ 'describeLoadBalancerAttributes' smart constructor.
 newtype DescribeLoadBalancerAttributes = DescribeLoadBalancerAttributes'
     { _dlbaLoadBalancerName :: Text
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
@@ -96,7 +98,9 @@
                "Version" =: ("2012-06-01" :: ByteString),
                "LoadBalancerName" =: _dlbaLoadBalancerName]
 
--- | /See:/ 'describeLoadBalancerAttributesResponse' smart constructor.
+-- | Contains the output of DescribeLoadBalancerAttributes.
+--
+-- /See:/ 'describeLoadBalancerAttributesResponse' smart constructor.
 data DescribeLoadBalancerAttributesResponse = DescribeLoadBalancerAttributesResponse'
     { _dlbarsLoadBalancerAttributes :: !(Maybe LoadBalancerAttributes)
     , _dlbarsResponseStatus         :: !Int
diff --git a/gen/Network/AWS/ELB/DescribeLoadBalancerPolicies.hs b/gen/Network/AWS/ELB/DescribeLoadBalancerPolicies.hs
--- a/gen/Network/AWS/ELB/DescribeLoadBalancerPolicies.hs
+++ b/gen/Network/AWS/ELB/DescribeLoadBalancerPolicies.hs
@@ -45,7 +45,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'describeLoadBalancerPolicies' smart constructor.
+-- | Contains the parameters for DescribeLoadBalancerPolicies.
+--
+-- /See:/ 'describeLoadBalancerPolicies' smart constructor.
 data DescribeLoadBalancerPolicies = DescribeLoadBalancerPolicies'
     { _dlbpPolicyNames      :: !(Maybe [Text])
     , _dlbpLoadBalancerName :: !(Maybe Text)
@@ -108,7 +110,9 @@
                  toQuery (toQueryList "member" <$> _dlbpPolicyNames),
                "LoadBalancerName" =: _dlbpLoadBalancerName]
 
--- | /See:/ 'describeLoadBalancerPoliciesResponse' smart constructor.
+-- | Contains the output of DescribeLoadBalancerPolicies.
+--
+-- /See:/ 'describeLoadBalancerPoliciesResponse' smart constructor.
 data DescribeLoadBalancerPoliciesResponse = DescribeLoadBalancerPoliciesResponse'
     { _dlbprsPolicyDescriptions :: !(Maybe [PolicyDescription])
     , _dlbprsResponseStatus     :: !Int
diff --git a/gen/Network/AWS/ELB/DescribeLoadBalancerPolicyTypes.hs b/gen/Network/AWS/ELB/DescribeLoadBalancerPolicyTypes.hs
--- a/gen/Network/AWS/ELB/DescribeLoadBalancerPolicyTypes.hs
+++ b/gen/Network/AWS/ELB/DescribeLoadBalancerPolicyTypes.hs
@@ -18,9 +18,11 @@
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
--- Describes the specified load balancer policy types.
+-- Describes the specified load balancer policy types or all load balancer policy types.
 --
--- You can use these policy types with < CreateLoadBalancerPolicy> to create policy configurations for a load balancer.
+-- The description of each type indicates how it can be used. For example, some policies can be used only with layer 7 listeners, some policies can be used only with layer 4 listeners, and some policies can be used only with your EC2 instances.
+--
+-- You can use < CreateLoadBalancerPolicy> to create a policy configuration for any of these policy types. Then, depending on the policy type, use either < SetLoadBalancerPoliciesOfListener> or < SetLoadBalancerPoliciesForBackendServer> to set the policy.
 module Network.AWS.ELB.DescribeLoadBalancerPolicyTypes
     (
     -- * Creating a Request
@@ -44,7 +46,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'describeLoadBalancerPolicyTypes' smart constructor.
+-- | Contains the parameters for DescribeLoadBalancerPolicyTypes.
+--
+-- /See:/ 'describeLoadBalancerPolicyTypes' smart constructor.
 newtype DescribeLoadBalancerPolicyTypes = DescribeLoadBalancerPolicyTypes'
     { _dlbptPolicyTypeNames :: Maybe [Text]
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
@@ -101,7 +105,9 @@
                  toQuery
                    (toQueryList "member" <$> _dlbptPolicyTypeNames)]
 
--- | /See:/ 'describeLoadBalancerPolicyTypesResponse' smart constructor.
+-- | Contains the output of DescribeLoadBalancerPolicyTypes.
+--
+-- /See:/ 'describeLoadBalancerPolicyTypesResponse' smart constructor.
 data DescribeLoadBalancerPolicyTypesResponse = DescribeLoadBalancerPolicyTypesResponse'
     { _dlbptrsPolicyTypeDescriptions :: !(Maybe [PolicyTypeDescription])
     , _dlbptrsResponseStatus         :: !Int
diff --git a/gen/Network/AWS/ELB/DescribeLoadBalancers.hs b/gen/Network/AWS/ELB/DescribeLoadBalancers.hs
--- a/gen/Network/AWS/ELB/DescribeLoadBalancers.hs
+++ b/gen/Network/AWS/ELB/DescribeLoadBalancers.hs
@@ -48,7 +48,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'describeLoadBalancers' smart constructor.
+-- | Contains the parameters for DescribeLoadBalancers.
+--
+-- /See:/ 'describeLoadBalancers' smart constructor.
 data DescribeLoadBalancers = DescribeLoadBalancers'
     { _dlbMarker            :: !(Maybe Text)
     , _dlbPageSize          :: !(Maybe Nat)
@@ -126,7 +128,9 @@
                  toQuery
                    (toQueryList "member" <$> _dlbLoadBalancerNames)]
 
--- | /See:/ 'describeLoadBalancersResponse' smart constructor.
+-- | Contains the parameters for DescribeLoadBalancers.
+--
+-- /See:/ 'describeLoadBalancersResponse' smart constructor.
 data DescribeLoadBalancersResponse = DescribeLoadBalancersResponse'
     { _dlbrsLoadBalancerDescriptions :: !(Maybe [LoadBalancerDescription])
     , _dlbrsNextMarker               :: !(Maybe Text)
diff --git a/gen/Network/AWS/ELB/DescribeTags.hs b/gen/Network/AWS/ELB/DescribeTags.hs
--- a/gen/Network/AWS/ELB/DescribeTags.hs
+++ b/gen/Network/AWS/ELB/DescribeTags.hs
@@ -42,7 +42,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'describeTags' smart constructor.
+-- | Contains the parameters for DescribeTags.
+--
+-- /See:/ 'describeTags' smart constructor.
 newtype DescribeTags = DescribeTags'
     { _dtLoadBalancerNames :: List1 Text
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
@@ -93,7 +95,9 @@
                "LoadBalancerNames" =:
                  toQueryList "member" _dtLoadBalancerNames]
 
--- | /See:/ 'describeTagsResponse' smart constructor.
+-- | Contains the output for DescribeTags.
+--
+-- /See:/ 'describeTagsResponse' smart constructor.
 data DescribeTagsResponse = DescribeTagsResponse'
     { _dtrsTagDescriptions :: !(Maybe [TagDescription])
     , _dtrsResponseStatus  :: !Int
diff --git a/gen/Network/AWS/ELB/DetachLoadBalancerFromSubnets.hs b/gen/Network/AWS/ELB/DetachLoadBalancerFromSubnets.hs
--- a/gen/Network/AWS/ELB/DetachLoadBalancerFromSubnets.hs
+++ b/gen/Network/AWS/ELB/DetachLoadBalancerFromSubnets.hs
@@ -45,7 +45,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'detachLoadBalancerFromSubnets' smart constructor.
+-- | Contains the parameters for DetachLoadBalancerFromSubnets.
+--
+-- /See:/ 'detachLoadBalancerFromSubnets' smart constructor.
 data DetachLoadBalancerFromSubnets = DetachLoadBalancerFromSubnets'
     { _dlbfsLoadBalancerName :: !Text
     , _dlbfsSubnets          :: ![Text]
@@ -109,7 +111,9 @@
                "LoadBalancerName" =: _dlbfsLoadBalancerName,
                "Subnets" =: toQueryList "member" _dlbfsSubnets]
 
--- | /See:/ 'detachLoadBalancerFromSubnetsResponse' smart constructor.
+-- | Contains the output of DetachLoadBalancerFromSubnets.
+--
+-- /See:/ 'detachLoadBalancerFromSubnetsResponse' smart constructor.
 data DetachLoadBalancerFromSubnetsResponse = DetachLoadBalancerFromSubnetsResponse'
     { _dlbfsrsSubnets        :: !(Maybe [Text])
     , _dlbfsrsResponseStatus :: !Int
diff --git a/gen/Network/AWS/ELB/DisableAvailabilityZonesForLoadBalancer.hs b/gen/Network/AWS/ELB/DisableAvailabilityZonesForLoadBalancer.hs
--- a/gen/Network/AWS/ELB/DisableAvailabilityZonesForLoadBalancer.hs
+++ b/gen/Network/AWS/ELB/DisableAvailabilityZonesForLoadBalancer.hs
@@ -22,7 +22,7 @@
 --
 -- There must be at least one Availability Zone registered with a load balancer at all times. After an Availability Zone is removed, all instances registered with the load balancer that are in the removed Availability Zone go into the 'OutOfService' state. Then, the load balancer attempts to equally balance the traffic among its remaining Availability Zones.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_ShrinkLBApp04.html Disable an Availability Zone from a Load-Balanced Application> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-disable-az.html Add or Remove Availability Zones> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.DisableAvailabilityZonesForLoadBalancer
     (
     -- * Creating a Request
@@ -47,7 +47,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'disableAvailabilityZonesForLoadBalancer' smart constructor.
+-- | Contains the parameters for DisableAvailabilityZonesForLoadBalancer.
+--
+-- /See:/ 'disableAvailabilityZonesForLoadBalancer' smart constructor.
 data DisableAvailabilityZonesForLoadBalancer = DisableAvailabilityZonesForLoadBalancer'
     { _dazflbLoadBalancerName  :: !Text
     , _dazflbAvailabilityZones :: ![Text]
@@ -117,7 +119,9 @@
                "AvailabilityZones" =:
                  toQueryList "member" _dazflbAvailabilityZones]
 
--- | /See:/ 'disableAvailabilityZonesForLoadBalancerResponse' smart constructor.
+-- | Contains the output for DisableAvailabilityZonesForLoadBalancer.
+--
+-- /See:/ 'disableAvailabilityZonesForLoadBalancerResponse' smart constructor.
 data DisableAvailabilityZonesForLoadBalancerResponse = DisableAvailabilityZonesForLoadBalancerResponse'
     { _dazflbrsAvailabilityZones :: !(Maybe [Text])
     , _dazflbrsResponseStatus    :: !Int
diff --git a/gen/Network/AWS/ELB/EnableAvailabilityZonesForLoadBalancer.hs b/gen/Network/AWS/ELB/EnableAvailabilityZonesForLoadBalancer.hs
--- a/gen/Network/AWS/ELB/EnableAvailabilityZonesForLoadBalancer.hs
+++ b/gen/Network/AWS/ELB/EnableAvailabilityZonesForLoadBalancer.hs
@@ -22,7 +22,7 @@
 --
 -- The load balancer evenly distributes requests across all its registered Availability Zones that contain instances.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_AddLBAvailabilityZone.html Add Availability Zone> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-disable-az.html Add or Remove Availability Zones> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.EnableAvailabilityZonesForLoadBalancer
     (
     -- * Creating a Request
@@ -47,7 +47,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'enableAvailabilityZonesForLoadBalancer' smart constructor.
+-- | Contains the parameters for EnableAvailabilityZonesForLoadBalancer.
+--
+-- /See:/ 'enableAvailabilityZonesForLoadBalancer' smart constructor.
 data EnableAvailabilityZonesForLoadBalancer = EnableAvailabilityZonesForLoadBalancer'
     { _eazflbLoadBalancerName  :: !Text
     , _eazflbAvailabilityZones :: ![Text]
@@ -117,7 +119,9 @@
                "AvailabilityZones" =:
                  toQueryList "member" _eazflbAvailabilityZones]
 
--- | /See:/ 'enableAvailabilityZonesForLoadBalancerResponse' smart constructor.
+-- | Contains the output of EnableAvailabilityZonesForLoadBalancer.
+--
+-- /See:/ 'enableAvailabilityZonesForLoadBalancerResponse' smart constructor.
 data EnableAvailabilityZonesForLoadBalancerResponse = EnableAvailabilityZonesForLoadBalancerResponse'
     { _eazflbrsAvailabilityZones :: !(Maybe [Text])
     , _eazflbrsResponseStatus    :: !Int
diff --git a/gen/Network/AWS/ELB/ModifyLoadBalancerAttributes.hs b/gen/Network/AWS/ELB/ModifyLoadBalancerAttributes.hs
--- a/gen/Network/AWS/ELB/ModifyLoadBalancerAttributes.hs
+++ b/gen/Network/AWS/ELB/ModifyLoadBalancerAttributes.hs
@@ -22,12 +22,16 @@
 --
 -- You can modify the load balancer attributes, such as 'AccessLogs', 'ConnectionDraining', and 'CrossZoneLoadBalancing' by either enabling or disabling them. Or, you can modify the load balancer attribute 'ConnectionSettings' by specifying an idle connection timeout value for your load balancer.
 --
--- For more information, see the following in the /Elastic Load Balancing Developer Guide/:
+-- For more information, see the following in the /Classic Load Balancers Guide/:
 --
--- -   <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#request-routing Cross-Zone Load Balancing>
--- -   <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#conn-drain Connection Draining>
--- -   <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/access-log-collection.html Access Logs>
--- -   <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#idle-timeout Idle Connection Timeout>
+-- -   <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-disable-crosszone-lb.html Cross-Zone Load Balancing>
+--
+-- -   <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-conn-drain.html Connection Draining>
+--
+-- -   <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/access-log-collection.html Access Logs>
+--
+-- -   <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-idle-timeout.html Idle Connection Timeout>
+--
 module Network.AWS.ELB.ModifyLoadBalancerAttributes
     (
     -- * Creating a Request
@@ -53,7 +57,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'modifyLoadBalancerAttributes' smart constructor.
+-- | Contains the parameters for ModifyLoadBalancerAttributes.
+--
+-- /See:/ 'modifyLoadBalancerAttributes' smart constructor.
 data ModifyLoadBalancerAttributes = ModifyLoadBalancerAttributes'
     { _mlbaLoadBalancerName       :: !Text
     , _mlbaLoadBalancerAttributes :: !LoadBalancerAttributes
@@ -118,7 +124,9 @@
                "LoadBalancerAttributes" =:
                  _mlbaLoadBalancerAttributes]
 
--- | /See:/ 'modifyLoadBalancerAttributesResponse' smart constructor.
+-- | Contains the output of ModifyLoadBalancerAttributes.
+--
+-- /See:/ 'modifyLoadBalancerAttributesResponse' smart constructor.
 data ModifyLoadBalancerAttributesResponse = ModifyLoadBalancerAttributesResponse'
     { _mlbarsLoadBalancerName       :: !(Maybe Text)
     , _mlbarsLoadBalancerAttributes :: !(Maybe LoadBalancerAttributes)
diff --git a/gen/Network/AWS/ELB/RegisterInstancesWithLoadBalancer.hs b/gen/Network/AWS/ELB/RegisterInstancesWithLoadBalancer.hs
--- a/gen/Network/AWS/ELB/RegisterInstancesWithLoadBalancer.hs
+++ b/gen/Network/AWS/ELB/RegisterInstancesWithLoadBalancer.hs
@@ -26,9 +26,9 @@
 --
 -- After the instance is registered, it starts receiving traffic and requests from the load balancer. Any instance that is not in one of the Availability Zones registered for the load balancer is moved to the 'OutOfService' state. If an Availability Zone is added to the load balancer later, any instances registered with the load balancer move to the 'InService' state.
 --
--- If you stop an instance registered with a load balancer and then start it, the IP addresses associated with the instance changes. Elastic Load Balancing cannot recognize the new IP address, which prevents it from routing traffic to the instances. We recommend that you use the following sequence: stop the instance, deregister the instance, start the instance, and then register the instance. To deregister instances from a load balancer, use < DeregisterInstancesFromLoadBalancer>.
+-- To deregister instances from a load balancer, use < DeregisterInstancesFromLoadBalancer>.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_DeReg_Reg_Instances.html Deregister and Register EC2 Instances> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-deregister-register-instances.html Register or De-Register EC2 Instances> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.RegisterInstancesWithLoadBalancer
     (
     -- * Creating a Request
@@ -53,7 +53,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'registerInstancesWithLoadBalancer' smart constructor.
+-- | Contains the parameters for RegisterInstancesWithLoadBalancer.
+--
+-- /See:/ 'registerInstancesWithLoadBalancer' smart constructor.
 data RegisterInstancesWithLoadBalancer = RegisterInstancesWithLoadBalancer'
     { _riwlbLoadBalancerName :: !Text
     , _riwlbInstances        :: ![Instance]
@@ -119,7 +121,9 @@
                "LoadBalancerName" =: _riwlbLoadBalancerName,
                "Instances" =: toQueryList "member" _riwlbInstances]
 
--- | /See:/ 'registerInstancesWithLoadBalancerResponse' smart constructor.
+-- | Contains the output of RegisterInstancesWithLoadBalancer.
+--
+-- /See:/ 'registerInstancesWithLoadBalancerResponse' smart constructor.
 data RegisterInstancesWithLoadBalancerResponse = RegisterInstancesWithLoadBalancerResponse'
     { _riwlbrsInstances      :: !(Maybe [Instance])
     , _riwlbrsResponseStatus :: !Int
diff --git a/gen/Network/AWS/ELB/RemoveTags.hs b/gen/Network/AWS/ELB/RemoveTags.hs
--- a/gen/Network/AWS/ELB/RemoveTags.hs
+++ b/gen/Network/AWS/ELB/RemoveTags.hs
@@ -42,7 +42,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'removeTags' smart constructor.
+-- | Contains the parameters for RemoveTags.
+--
+-- /See:/ 'removeTags' smart constructor.
 data RemoveTags = RemoveTags'
     { _rtLoadBalancerNames :: ![Text]
     , _rtTags              :: !(List1 TagKeyOnly)
@@ -99,7 +101,9 @@
                  toQueryList "member" _rtLoadBalancerNames,
                "Tags" =: toQueryList "member" _rtTags]
 
--- | /See:/ 'removeTagsResponse' smart constructor.
+-- | Contains the output of RemoveTags.
+--
+-- /See:/ 'removeTagsResponse' smart constructor.
 newtype RemoveTagsResponse = RemoveTagsResponse'
     { _rtrsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/SetLoadBalancerListenerSSLCertificate.hs b/gen/Network/AWS/ELB/SetLoadBalancerListenerSSLCertificate.hs
--- a/gen/Network/AWS/ELB/SetLoadBalancerListenerSSLCertificate.hs
+++ b/gen/Network/AWS/ELB/SetLoadBalancerListenerSSLCertificate.hs
@@ -20,7 +20,7 @@
 --
 -- Sets the certificate that terminates the specified listener\'s SSL connections. The specified certificate replaces any prior certificate that was used on the same load balancer and port.
 --
--- For more information about updating your SSL certificate, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_UpdatingLoadBalancerSSL.html Updating an SSL Certificate for a Load Balancer> in the /Elastic Load Balancing Developer Guide/.
+-- For more information about updating your SSL certificate, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-update-ssl-cert.html Replace the SSL Certificate for Your Load Balancer> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.SetLoadBalancerListenerSSLCertificate
     (
     -- * Creating a Request
@@ -45,7 +45,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'setLoadBalancerListenerSSLCertificate' smart constructor.
+-- | Contains the parameters for SetLoadBalancerListenerSSLCertificate.
+--
+-- /See:/ 'setLoadBalancerListenerSSLCertificate' smart constructor.
 data SetLoadBalancerListenerSSLCertificate = SetLoadBalancerListenerSSLCertificate'
     { _slblscLoadBalancerName :: !Text
     , _slblscLoadBalancerPort :: !Int
@@ -122,7 +124,9 @@
                "LoadBalancerPort" =: _slblscLoadBalancerPort,
                "SSLCertificateId" =: _slblscSSLCertificateId]
 
--- | /See:/ 'setLoadBalancerListenerSSLCertificateResponse' smart constructor.
+-- | Contains the output of SetLoadBalancerListenerSSLCertificate.
+--
+-- /See:/ 'setLoadBalancerListenerSSLCertificateResponse' smart constructor.
 newtype SetLoadBalancerListenerSSLCertificateResponse = SetLoadBalancerListenerSSLCertificateResponse'
     { _slblscrsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/SetLoadBalancerPoliciesForBackendServer.hs b/gen/Network/AWS/ELB/SetLoadBalancerPoliciesForBackendServer.hs
--- a/gen/Network/AWS/ELB/SetLoadBalancerPoliciesForBackendServer.hs
+++ b/gen/Network/AWS/ELB/SetLoadBalancerPoliciesForBackendServer.hs
@@ -18,11 +18,13 @@
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
--- Replaces the set of policies associated with the specified port on which the back-end server is listening with a new set of policies. At this time, only the back-end server authentication policy type can be applied to the back-end ports; this policy type is composed of multiple public key policies.
+-- Replaces the set of policies associated with the specified port on which the EC2 instance is listening with a new set of policies. At this time, only the back-end server authentication policy type can be applied to the instance ports; this policy type is composed of multiple public key policies.
 --
 -- Each time you use 'SetLoadBalancerPoliciesForBackendServer' to enable the policies, use the 'PolicyNames' parameter to list the policies that you want to enable.
 --
--- You can use < DescribeLoadBalancers> or < DescribeLoadBalancerPolicies> to verify that the policy is associated with the back-end server.
+-- You can use < DescribeLoadBalancers> or < DescribeLoadBalancerPolicies> to verify that the policy is associated with the EC2 instance.
+--
+-- For more information about enabling back-end instance authentication, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-create-https-ssl-load-balancer.html#configure_backendauth_clt Configure Back-end Instance Authentication> in the /Classic Load Balancers Guide/. For more information about Proxy Protocol, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-proxy-protocol.html Configure Proxy Protocol Support> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.SetLoadBalancerPoliciesForBackendServer
     (
     -- * Creating a Request
@@ -47,7 +49,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'setLoadBalancerPoliciesForBackendServer' smart constructor.
+-- | Contains the parameters for SetLoadBalancerPoliciesForBackendServer.
+--
+-- /See:/ 'setLoadBalancerPoliciesForBackendServer' smart constructor.
 data SetLoadBalancerPoliciesForBackendServer = SetLoadBalancerPoliciesForBackendServer'
     { _slbpfbsLoadBalancerName :: !Text
     , _slbpfbsInstancePort     :: !Int
@@ -78,11 +82,11 @@
 slbpfbsLoadBalancerName :: Lens' SetLoadBalancerPoliciesForBackendServer Text
 slbpfbsLoadBalancerName = lens _slbpfbsLoadBalancerName (\ s a -> s{_slbpfbsLoadBalancerName = a});
 
--- | The port number associated with the back-end server.
+-- | The port number associated with the EC2 instance.
 slbpfbsInstancePort :: Lens' SetLoadBalancerPoliciesForBackendServer Int
 slbpfbsInstancePort = lens _slbpfbsInstancePort (\ s a -> s{_slbpfbsInstancePort = a});
 
--- | The names of the policies. If the list is empty, then all current polices are removed from the back-end server.
+-- | The names of the policies. If the list is empty, then all current polices are removed from the EC2 instance.
 slbpfbsPolicyNames :: Lens' SetLoadBalancerPoliciesForBackendServer [Text]
 slbpfbsPolicyNames = lens _slbpfbsPolicyNames (\ s a -> s{_slbpfbsPolicyNames = a}) . _Coerce;
 
@@ -125,7 +129,9 @@
                "PolicyNames" =:
                  toQueryList "member" _slbpfbsPolicyNames]
 
--- | /See:/ 'setLoadBalancerPoliciesForBackendServerResponse' smart constructor.
+-- | Contains the output of SetLoadBalancerPoliciesForBackendServer.
+--
+-- /See:/ 'setLoadBalancerPoliciesForBackendServerResponse' smart constructor.
 newtype SetLoadBalancerPoliciesForBackendServerResponse = SetLoadBalancerPoliciesForBackendServerResponse'
     { _slbpfbsrsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/SetLoadBalancerPoliciesOfListener.hs b/gen/Network/AWS/ELB/SetLoadBalancerPoliciesOfListener.hs
--- a/gen/Network/AWS/ELB/SetLoadBalancerPoliciesOfListener.hs
+++ b/gen/Network/AWS/ELB/SetLoadBalancerPoliciesOfListener.hs
@@ -18,7 +18,11 @@
 -- Stability   : auto-generated
 -- Portability : non-portable (GHC extensions)
 --
--- Associates, updates, or disables a policy with a listener for the specified load balancer. You can associate multiple policies with a listener.
+-- Replaces the current set of policies for the specified load balancer port with the specified set of policies.
+--
+-- To enable back-end server authentication, use < SetLoadBalancerPoliciesForBackendServer>.
+--
+-- For more information about setting policies, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/ssl-config-update.html Update the SSL Negotiation Configuration>, <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-sticky-sessions.html#enable-sticky-sessions-duration Duration-Based Session Stickiness>, and <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-sticky-sessions.html#enable-sticky-sessions-application Application-Controlled Session Stickiness> in the /Classic Load Balancers Guide/.
 module Network.AWS.ELB.SetLoadBalancerPoliciesOfListener
     (
     -- * Creating a Request
@@ -43,7 +47,9 @@
 import           Network.AWS.Request
 import           Network.AWS.Response
 
--- | /See:/ 'setLoadBalancerPoliciesOfListener' smart constructor.
+-- | Contains the parameters for SetLoadBalancePoliciesOfListener.
+--
+-- /See:/ 'setLoadBalancerPoliciesOfListener' smart constructor.
 data SetLoadBalancerPoliciesOfListener = SetLoadBalancerPoliciesOfListener'
     { _slbpolLoadBalancerName :: !Text
     , _slbpolLoadBalancerPort :: !Int
@@ -74,11 +80,11 @@
 slbpolLoadBalancerName :: Lens' SetLoadBalancerPoliciesOfListener Text
 slbpolLoadBalancerName = lens _slbpolLoadBalancerName (\ s a -> s{_slbpolLoadBalancerName = a});
 
--- | The external port of the load balancer for the policy.
+-- | The external port of the load balancer.
 slbpolLoadBalancerPort :: Lens' SetLoadBalancerPoliciesOfListener Int
 slbpolLoadBalancerPort = lens _slbpolLoadBalancerPort (\ s a -> s{_slbpolLoadBalancerPort = a});
 
--- | The names of the policies. If the list is empty, the current policy is removed from the listener.
+-- | The names of the policies. This list must include all policies to be enabled. If you omit a policy that is currently enabled, it is disabled. If the list is empty, all current policies are disabled.
 slbpolPolicyNames :: Lens' SetLoadBalancerPoliciesOfListener [Text]
 slbpolPolicyNames = lens _slbpolPolicyNames (\ s a -> s{_slbpolPolicyNames = a}) . _Coerce;
 
@@ -118,7 +124,9 @@
                "PolicyNames" =:
                  toQueryList "member" _slbpolPolicyNames]
 
--- | /See:/ 'setLoadBalancerPoliciesOfListenerResponse' smart constructor.
+-- | Contains the output of SetLoadBalancePoliciesOfListener.
+--
+-- /See:/ 'setLoadBalancerPoliciesOfListenerResponse' smart constructor.
 newtype SetLoadBalancerPoliciesOfListenerResponse = SetLoadBalancerPoliciesOfListenerResponse'
     { _slbpolrsResponseStatus :: Int
     } deriving (Eq,Read,Show,Data,Typeable,Generic)
diff --git a/gen/Network/AWS/ELB/Types.hs b/gen/Network/AWS/ELB/Types.hs
--- a/gen/Network/AWS/ELB/Types.hs
+++ b/gen/Network/AWS/ELB/Types.hs
@@ -27,10 +27,12 @@
     , _DuplicateListenerException
     , _TooManyTagsException
     , _PolicyTypeNotFoundException
+    , _UnsupportedProtocolException
     , _DuplicateAccessPointNameException
     , _InvalidSecurityGroupException
     , _ListenerNotFoundException
     , _InvalidEndPointException
+    , _DependencyThrottleException
     , _InvalidSchemeException
     , _TooManyAccessPointsException
     , _TooManyPoliciesException
@@ -296,7 +298,7 @@
 _DuplicateTagKeysException =
     _ServiceError . hasStatus 400 . hasCode "DuplicateTagKeys"
 
--- | A listener already exists for the specified 'LoadBalancerName' and 'LoadBalancerPort', but with a different 'InstancePort', 'Protocol', or 'SSLCertificateId'.
+-- | A listener already exists for the specified load balancer name and port, but with a different instance port, protocol, or SSL certificate.
 _DuplicateListenerException :: AsError a => Getting (First ServiceError) a ServiceError
 _DuplicateListenerException =
     _ServiceError . hasStatus 400 . hasCode "DuplicateListener"
@@ -310,6 +312,11 @@
 _PolicyTypeNotFoundException =
     _ServiceError . hasStatus 400 . hasCode "PolicyTypeNotFound"
 
+-- | Prism for UnsupportedProtocolException' errors.
+_UnsupportedProtocolException :: AsError a => Getting (First ServiceError) a ServiceError
+_UnsupportedProtocolException =
+    _ServiceError . hasStatus 400 . hasCode "UnsupportedProtocol"
+
 -- | The specified load balancer name already exists for this account.
 _DuplicateAccessPointNameException :: AsError a => Getting (First ServiceError) a ServiceError
 _DuplicateAccessPointNameException =
@@ -330,6 +337,11 @@
 _InvalidEndPointException =
     _ServiceError . hasStatus 400 . hasCode "InvalidInstance"
 
+-- | Prism for DependencyThrottleException' errors.
+_DependencyThrottleException :: AsError a => Getting (First ServiceError) a ServiceError
+_DependencyThrottleException =
+    _ServiceError . hasStatus 400 . hasCode "DependencyThrottle"
+
 -- | The specified value for the schema is not valid. You can only specify a scheme for load balancers in a VPC.
 _InvalidSchemeException :: AsError a => Getting (First ServiceError) a ServiceError
 _InvalidSchemeException =
@@ -345,7 +357,7 @@
 _TooManyPoliciesException =
     _ServiceError . hasStatus 400 . hasCode "TooManyPolicies"
 
--- | The specified SSL ID does not refer to a valid SSL certificate in AWS Identity and Access Management (IAM).
+-- | The specified ARN does not refer to a valid SSL certificate in AWS Identity and Access Management (IAM) or AWS Certificate Manager (ACM). Note that if you recently uploaded the certificate to IAM, this error might indicate that the certificate is not fully available yet.
 _CertificateNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
 _CertificateNotFoundException =
     _ServiceError . hasStatus 400 . hasCode "CertificateNotFound"
diff --git a/gen/Network/AWS/ELB/Types/Product.hs b/gen/Network/AWS/ELB/Types/Product.hs
--- a/gen/Network/AWS/ELB/Types/Product.hs
+++ b/gen/Network/AWS/ELB/Types/Product.hs
@@ -67,7 +67,7 @@
 alS3BucketName :: Lens' AccessLog (Maybe Text)
 alS3BucketName = lens _alS3BucketName (\ s a -> s{_alS3BucketName = a});
 
--- | Specifies whether access log is enabled for the load balancer.
+-- | Specifies whether access logs are enabled for the load balancer.
 alEnabled :: Lens' AccessLog Bool
 alEnabled = lens _alEnabled (\ s a -> s{_alEnabled = a});
 
@@ -174,7 +174,7 @@
 
 instance NFData AppCookieStickinessPolicy
 
--- | Information about the configuration of a back-end server.
+-- | Information about the configuration of an EC2 instance.
 --
 -- /See:/ 'backendServerDescription' smart constructor.
 data BackendServerDescription = BackendServerDescription'
@@ -197,11 +197,11 @@
     , _bsdInstancePort = Nothing
     }
 
--- | The names of the policies enabled for the back-end server.
+-- | The names of the policies enabled for the EC2 instance.
 bsdPolicyNames :: Lens' BackendServerDescription [Text]
 bsdPolicyNames = lens _bsdPolicyNames (\ s a -> s{_bsdPolicyNames = a}) . _Default . _Coerce;
 
--- | The port on which the back-end server is listening.
+-- | The port on which the EC2 instance is listening.
 bsdInstancePort :: Lens' BackendServerDescription (Maybe Natural)
 bsdInstancePort = lens _bsdInstancePort (\ s a -> s{_bsdInstancePort = a}) . mapping _Nat;
 
@@ -424,7 +424,7 @@
                "UnhealthyThreshold" =: _hcUnhealthyThreshold,
                "HealthyThreshold" =: _hcHealthyThreshold]
 
--- | The ID of a back-end instance.
+-- | The ID of an EC2 instance.
 --
 -- /See:/ 'instance'' smart constructor.
 newtype Instance = Instance'
@@ -443,7 +443,7 @@
     { _iInstanceId = Nothing
     }
 
--- | The ID of the instance.
+-- | The instance ID.
 iInstanceId :: Lens' Instance (Maybe Text)
 iInstanceId = lens _iInstanceId (\ s a -> s{_iInstanceId = a});
 
@@ -458,7 +458,7 @@
         toQuery Instance'{..}
           = mconcat ["InstanceId" =: _iInstanceId]
 
--- | Information about the state of a back-end instance.
+-- | Information about the state of an EC2 instance.
 --
 -- /See:/ 'instanceState' smart constructor.
 data InstanceState = InstanceState'
@@ -568,7 +568,7 @@
     , _lbcspCookieExpirationPeriod = Nothing
     }
 
--- | The name for the policy being created. The name must be unique within the set of policies for this load balancer.
+-- | The name of the policy. This name must be unique within the set of policies for this load balancer.
 lbcspPolicyName :: Lens' LBCookieStickinessPolicy (Maybe Text)
 lbcspPolicyName = lens _lbcspPolicyName (\ s a -> s{_lbcspPolicyName = a});
 
@@ -588,7 +588,7 @@
 
 -- | Information about a listener.
 --
--- For information about the protocols and the ports supported by Elastic Load Balancing, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-listener-config.html Listener Configurations for Elastic Load Balancing> in the /Elastic Load Balancing Developer Guide/.
+-- For information about the protocols and the ports supported by Elastic Load Balancing, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html Listeners for Your Classic Load Balancer> in the /Classic Load Balancers Guide/.
 --
 -- /See:/ 'listener' smart constructor.
 data Listener = Listener'
@@ -626,7 +626,7 @@
     , _lInstancePort = _Nat # pInstancePort_
     }
 
--- | The protocol to use for routing traffic to back-end instances: HTTP, HTTPS, TCP, or SSL.
+-- | The protocol to use for routing traffic to instances: HTTP, HTTPS, TCP, or SSL.
 --
 -- If the front-end protocol is HTTP, HTTPS, TCP, or SSL, 'InstanceProtocol' must be at the same protocol.
 --
@@ -751,15 +751,15 @@
     , _lbaConnectionDraining = Nothing
     }
 
--- | If enabled, the load balancer routes the request traffic evenly across all back-end instances regardless of the Availability Zones.
+-- | If enabled, the load balancer routes the request traffic evenly across all instances regardless of the Availability Zones.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/enable-disable-crosszone-lb.html Enable Cross-Zone Load Balancing> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-disable-crosszone-lb.html Configure Cross-Zone Load Balancing> in the /Classic Load Balancers Guide/.
 lbaCrossZoneLoadBalancing :: Lens' LoadBalancerAttributes (Maybe CrossZoneLoadBalancing)
 lbaCrossZoneLoadBalancing = lens _lbaCrossZoneLoadBalancing (\ s a -> s{_lbaCrossZoneLoadBalancing = a});
 
 -- | If enabled, the load balancer captures detailed information of all requests and delivers the information to the Amazon S3 bucket that you specify.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/enable-access-logs.html Enable Access Logs> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html Enable Access Logs> in the /Classic Load Balancers Guide/.
 lbaAccessLog :: Lens' LoadBalancerAttributes (Maybe AccessLog)
 lbaAccessLog = lens _lbaAccessLog (\ s a -> s{_lbaAccessLog = a});
 
@@ -769,13 +769,13 @@
 
 -- | If enabled, the load balancer allows the connections to remain idle (no data is sent over the connection) for the specified duration.
 --
--- By default, Elastic Load Balancing maintains a 60-second idle connection timeout for both front-end and back-end connections of your load balancer. For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/config-idle-timeout.html Configure Idle Connection Timeout> in the /Elastic Load Balancing Developer Guide/.
+-- By default, Elastic Load Balancing maintains a 60-second idle connection timeout for both front-end and back-end connections of your load balancer. For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-idle-timeout.html Configure Idle Connection Timeout> in the /Classic Load Balancers Guide/.
 lbaConnectionSettings :: Lens' LoadBalancerAttributes (Maybe ConnectionSettings)
 lbaConnectionSettings = lens _lbaConnectionSettings (\ s a -> s{_lbaConnectionSettings = a});
 
--- | If enabled, the load balancer allows existing requests to complete before the load balancer shifts traffic away from a deregistered or unhealthy back-end instance.
+-- | If enabled, the load balancer allows existing requests to complete before the load balancer shifts traffic away from a deregistered or unhealthy instance.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/config-conn-drain.html Enable Connection Draining> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-conn-drain.html Configure Connection Draining> in the /Classic Load Balancers Guide/.
 lbaConnectionDraining :: Lens' LoadBalancerAttributes (Maybe ConnectionDraining)
 lbaConnectionDraining = lens _lbaConnectionDraining (\ s a -> s{_lbaConnectionDraining = a});
 
@@ -885,13 +885,13 @@
     , _lbdPolicies = Nothing
     }
 
--- | The security group that you can use as part of your inbound rules for your load balancer\'s back-end application instances. To only allow traffic from load balancers, add a security group rule to your back end instance that specifies this source security group as the inbound source.
+-- | The security group for the load balancer, which you can use as part of your inbound rules for your registered instances. To only allow traffic from load balancers, add a security group rule that specifies this source security group as the inbound source.
 lbdSourceSecurityGroup :: Lens' LoadBalancerDescription (Maybe SourceSecurityGroup)
 lbdSourceSecurityGroup = lens _lbdSourceSecurityGroup (\ s a -> s{_lbdSourceSecurityGroup = a});
 
--- | The Amazon Route 53 hosted zone associated with the load balancer.
+-- | The DNS name of the load balancer.
 --
--- For more information, see <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/using-domain-names-with-elb.html Using Domain Names With Elastic Load Balancing> in the /Elastic Load Balancing Developer Guide/.
+-- For more information, see <http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/using-domain-names-with-elb.html Configure a Custom Domain Name> in the /Classic Load Balancers Guide/.
 lbdCanonicalHostedZoneName :: Lens' LoadBalancerDescription (Maybe Text)
 lbdCanonicalHostedZoneName = lens _lbdCanonicalHostedZoneName (\ s a -> s{_lbdCanonicalHostedZoneName = a});
 
@@ -923,11 +923,11 @@
 lbdAvailabilityZones :: Lens' LoadBalancerDescription [Text]
 lbdAvailabilityZones = lens _lbdAvailabilityZones (\ s a -> s{_lbdAvailabilityZones = a}) . _Default . _Coerce;
 
--- | Information about the back-end servers.
+-- | Information about your EC2 instances.
 lbdBackendServerDescriptions :: Lens' LoadBalancerDescription [BackendServerDescription]
 lbdBackendServerDescriptions = lens _lbdBackendServerDescriptions (\ s a -> s{_lbdBackendServerDescriptions = a}) . _Default . _Coerce;
 
--- | The ID of the Amazon Route 53 hosted zone name associated with the load balancer.
+-- | The ID of the Amazon Route 53 hosted zone for the load balancer.
 lbdCanonicalHostedZoneNameId :: Lens' LoadBalancerDescription (Maybe Text)
 lbdCanonicalHostedZoneNameId = lens _lbdCanonicalHostedZoneNameId (\ s a -> s{_lbdCanonicalHostedZoneNameId = a});
 
@@ -947,7 +947,7 @@
 lbdListenerDescriptions :: Lens' LoadBalancerDescription [ListenerDescription]
 lbdListenerDescriptions = lens _lbdListenerDescriptions (\ s a -> s{_lbdListenerDescriptions = a}) . _Default . _Coerce;
 
--- | The external DNS name of the load balancer.
+-- | The DNS name of the load balancer.
 lbdDNSName :: Lens' LoadBalancerDescription (Maybe Text)
 lbdDNSName = lens _lbdDNSName (\ s a -> s{_lbdDNSName = a});
 
@@ -1171,9 +1171,13 @@
 -- Valid values:
 --
 -- -   ONE(1) : Single value required
--- -   ZERO_OR_ONE(0..1) : Up to one value can be supplied
+--
+-- -   ZERO_OR_ONE(0..1) : Up to one value is allowed
+--
 -- -   ZERO_OR_MORE(0..*) : Optional. Multiple values are allowed
+--
 -- -   ONE_OR_MORE(1..*0) : Required. Multiple values are allowed
+--
 patdCardinality :: Lens' PolicyAttributeTypeDescription (Maybe Text)
 patdCardinality = lens _patdCardinality (\ s a -> s{_patdCardinality = a});
 
diff --git a/src/.gitkeep b/src/.gitkeep
new file mode 100644
--- /dev/null
+++ b/src/.gitkeep
