diff --git a/Lib/pydoc_data/topics.py b/Lib/pydoc_data/topics.py
index c7fac33..ad3fa25 100644
--- a/Lib/pydoc_data/topics.py
+++ b/Lib/pydoc_data/topics.py
@@ -1,5 +1,5 @@
 # -*- coding: utf-8 -*-
-# Autogenerated by Sphinx on Tue Dec  6 18:51:51 2016
+# Autogenerated by Sphinx on Fri Dec 16 16:33:16 2016
 topics = {'assert': '\n'
            'The "assert" statement\n'
            '**********************\n'
@@ -2613,7 +2613,8 @@
              'functions, even if they do not contain "await" or "async" '
              'keywords.\n'
              '\n'
-             'It is a "SyntaxError" to use "yield" expressions in "async def"\n'
+             'It is a "SyntaxError" to use "yield from" expressions in "async '
+             'def"\n'
              'coroutines.\n'
              '\n'
              'An example of a coroutine function:\n'
@@ -7087,7 +7088,14 @@
            'generator is done and will cause "StopIteration" to be raised. '
            'The\n'
            'returned value (if any) is used as an argument to construct\n'
-           '"StopIteration" and becomes the "StopIteration.value" attribute.\n',
+           '"StopIteration" and becomes the "StopIteration.value" attribute.\n'
+           '\n'
+           'In an asynchronous generator function, an empty "return" '
+           'statement\n'
+           'indicates that the asynchronous generator is done and will cause\n'
+           '"StopAsyncIteration" to be raised.  A non-empty "return" statement '
+           'is\n'
+           'a syntax error in an asynchronous generator function.\n',
  'sequence-types': '\n'
                    'Emulating container types\n'
                    '*************************\n'
@@ -11097,6 +11105,27 @@
           'statements.\n'
           '      See also the Coroutine Objects section.\n'
           '\n'
+          '   Asynchronous generator functions\n'
+          '      A function or method which is defined using "async def" and\n'
+          '      which uses the "yield" statement is called a *asynchronous\n'
+          '      generator function*.  Such a function, when called, returns '
+          'an\n'
+          '      asynchronous iterator object which can be used in an "async '
+          'for"\n'
+          '      statement to execute the body of the function.\n'
+          '\n'
+          '      Calling the asynchronous iterator\'s "aiterator.__anext__()"\n'
+          '      method will return an *awaitable* which when awaited will\n'
+          '      execute until it provides a value using the "yield" '
+          'expression.\n'
+          '      When the function executes an empty "return" statement or '
+          'falls\n'
+          '      off the end, a "StopAsyncIteration" exception is raised and '
+          'the\n'
+          '      asynchronous iterator will have reached the end of the set '
+          'of\n'
+          '      values to be yielded.\n'
+          '\n'
           '   Built-in functions\n'
           '      A built-in function object is a wrapper around a C function.\n'
           '      Examples of built-in functions are "len()" and "math.sin()"\n'
