Regen docs (#373)

diff --git a/docs/dyn/spanner_v1.projects.instances.databases.sessions.html b/docs/dyn/spanner_v1.projects.instances.databases.sessions.html
index a8af489..2674a45 100644
--- a/docs/dyn/spanner_v1.projects.instances.databases.sessions.html
+++ b/docs/dyn/spanner_v1.projects.instances.databases.sessions.html
@@ -550,6 +550,14 @@
               # If the same key is specified multiple times in the set (for example
               # if two ranges, two keys, or a key and a range overlap), Cloud Spanner
               # behaves as if the key were only specified once.
+            "keys": [ # A list of specific keys. Entries in `keys` should have exactly as
+                # many elements as there are columns in the primary or index key
+                # with which this `KeySet` is used.  Individual key values are
+                # encoded as described here.
+              [
+                "",
+              ],
+            ],
             "ranges": [ # A list of key ranges. See KeyRange for more information about
                 # key range specifications.
               { # KeyRange represents a range of rows in a table or index.
@@ -656,14 +664,6 @@
                 ],
               },
             ],
-            "keys": [ # A list of specific keys. Entries in `keys` should have exactly as
-                # many elements as there are columns in the primary or index key
-                # with which this `KeySet` is used.  Individual key values are
-                # encoded as described here.
-              [
-                "",
-              ],
-            ],
             "all": True or False, # For convenience `all` can be set to `true` to indicate that this
                 # `KeySet` matches all keys in the table or index. Note that any keys
                 # specified in `keys` or `ranges` are only yielded once.
@@ -983,10 +983,9 @@
 
 Cloud Spanner limits the number of sessions that can exist at any given
 time; thus, it is a good idea to delete idle and/or unneeded sessions.
-Aside from explicit deletes, Cloud Spanner can delete sessions for
-which no operations are sent for more than an hour, or due to
-internal errors. If a session is deleted, requests to it
-return `NOT_FOUND`.
+Aside from explicit deletes, Cloud Spanner can delete sessions for which no
+operations are sent for more than an hour. If a session is deleted,
+requests to it return `NOT_FOUND`.
 
 Idle sessions can be kept alive by sending a trivial SQL query
 periodically, e.g., `"SELECT 1"`.
@@ -2434,14 +2433,6 @@
     { # Partial results from a streaming read or SQL query. Streaming reads and
       # SQL queries better tolerate large result sets, large rows, and large
       # values, but are a little trickier to consume.
-    "resumeToken": "A String", # Streaming calls might be interrupted for a variety of reasons, such
-        # as TCP connection loss. If this occurs, the stream of results can
-        # be resumed by re-sending the original request and including
-        # `resume_token`. Note that executing any other transaction in the
-        # same session invalidates the token.
-    "chunkedValue": True or False, # If true, then the final value in values is chunked, and must
-        # be combined with more values from subsequent `PartialResultSet`s
-        # to obtain a complete field value.
     "values": [ # A streamed result set consists of a stream of values, which might
         # be split into many `PartialResultSet` messages to accommodate
         # large rows and/or large values. Every N complete values defines a
@@ -2517,6 +2508,14 @@
         # field value `"World" = "W" + "orl" + "d"`.
       "",
     ],
+    "chunkedValue": True or False, # If true, then the final value in values is chunked, and must
+        # be combined with more values from subsequent `PartialResultSet`s
+        # to obtain a complete field value.
+    "resumeToken": "A String", # Streaming calls might be interrupted for a variety of reasons, such
+        # as TCP connection loss. If this occurs, the stream of results can
+        # be resumed by re-sending the original request and including
+        # `resume_token`. Note that executing any other transaction in the
+        # same session invalidates the token.
     "stats": { # Additional statistics about a ResultSet or PartialResultSet. # Query plan and execution statistics for the query that produced this
         # streaming result set. These can be requested by setting
         # ExecuteSqlRequest.query_mode and are sent
@@ -3275,6 +3274,14 @@
         # If the same key is specified multiple times in the set (for example
         # if two ranges, two keys, or a key and a range overlap), Cloud Spanner
         # behaves as if the key were only specified once.
+      "keys": [ # A list of specific keys. Entries in `keys` should have exactly as
+          # many elements as there are columns in the primary or index key
+          # with which this `KeySet` is used.  Individual key values are
+          # encoded as described here.
+        [
+          "",
+        ],
+      ],
       "ranges": [ # A list of key ranges. See KeyRange for more information about
           # key range specifications.
         { # KeyRange represents a range of rows in a table or index.
@@ -3381,14 +3388,6 @@
           ],
         },
       ],
-      "keys": [ # A list of specific keys. Entries in `keys` should have exactly as
-          # many elements as there are columns in the primary or index key
-          # with which this `KeySet` is used.  Individual key values are
-          # encoded as described here.
-        [
-          "",
-        ],
-      ],
       "all": True or False, # For convenience `all` can be set to `true` to indicate that this
           # `KeySet` matches all keys in the table or index. Note that any keys
           # specified in `keys` or `ranges` are only yielded once.
@@ -4189,6 +4188,14 @@
         # If the same key is specified multiple times in the set (for example
         # if two ranges, two keys, or a key and a range overlap), Cloud Spanner
         # behaves as if the key were only specified once.
+      "keys": [ # A list of specific keys. Entries in `keys` should have exactly as
+          # many elements as there are columns in the primary or index key
+          # with which this `KeySet` is used.  Individual key values are
+          # encoded as described here.
+        [
+          "",
+        ],
+      ],
       "ranges": [ # A list of key ranges. See KeyRange for more information about
           # key range specifications.
         { # KeyRange represents a range of rows in a table or index.
@@ -4295,14 +4302,6 @@
           ],
         },
       ],
-      "keys": [ # A list of specific keys. Entries in `keys` should have exactly as
-          # many elements as there are columns in the primary or index key
-          # with which this `KeySet` is used.  Individual key values are
-          # encoded as described here.
-        [
-          "",
-        ],
-      ],
       "all": True or False, # For convenience `all` can be set to `true` to indicate that this
           # `KeySet` matches all keys in the table or index. Note that any keys
           # specified in `keys` or `ranges` are only yielded once.
@@ -4327,14 +4326,6 @@
     { # Partial results from a streaming read or SQL query. Streaming reads and
       # SQL queries better tolerate large result sets, large rows, and large
       # values, but are a little trickier to consume.
-    "resumeToken": "A String", # Streaming calls might be interrupted for a variety of reasons, such
-        # as TCP connection loss. If this occurs, the stream of results can
-        # be resumed by re-sending the original request and including
-        # `resume_token`. Note that executing any other transaction in the
-        # same session invalidates the token.
-    "chunkedValue": True or False, # If true, then the final value in values is chunked, and must
-        # be combined with more values from subsequent `PartialResultSet`s
-        # to obtain a complete field value.
     "values": [ # A streamed result set consists of a stream of values, which might
         # be split into many `PartialResultSet` messages to accommodate
         # large rows and/or large values. Every N complete values defines a
@@ -4410,6 +4401,14 @@
         # field value `"World" = "W" + "orl" + "d"`.
       "",
     ],
+    "chunkedValue": True or False, # If true, then the final value in values is chunked, and must
+        # be combined with more values from subsequent `PartialResultSet`s
+        # to obtain a complete field value.
+    "resumeToken": "A String", # Streaming calls might be interrupted for a variety of reasons, such
+        # as TCP connection loss. If this occurs, the stream of results can
+        # be resumed by re-sending the original request and including
+        # `resume_token`. Note that executing any other transaction in the
+        # same session invalidates the token.
     "stats": { # Additional statistics about a ResultSet or PartialResultSet. # Query plan and execution statistics for the query that produced this
         # streaming result set. These can be requested by setting
         # ExecuteSqlRequest.query_mode and are sent