def page(title, description, element_list=None, tab_list=None):
_page = {<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>'<STR_LIT>': title,<EOL>'<STR_LIT>': description,<EOL>'<STR_LIT>': {},<EOL>}<EOL>if element_list is not None:<EOL><INDENT>if isinstance(element_list, list):<EOL><INDENT>_page['<STR_LIT>']['<STR_LIT>'] = element_list<EOL><DEDENT>else:<EOL><INDENT>_page['<STR_LIT>']['<STR_LIT>'] = [element_list]<EOL><DEDENT><DEDENT>if tab_list is not None:<EOL><INDENT>if isinstance(tab_list, list):<EOL><INDENT>_page['<STR_LIT>']['<STR_LIT>'] = tab_list<EOL><DEDENT>else:<EOL><INDENT>_page['<STR_LIT>']['<STR_LIT>'] = [tab_list]<EOL><DEDENT><DEDENT>return _page<EOL>
Returns a dictionary representing a new page to display elements.
This can be thought of as a simple container for displaying multiple
types of information. The ``section`` method can be used to create
separate tabs.

Args:
    title: The title to display
    description: A description of the section
    element_list: The list of elements to display. If a single element is
                  given it will be wrapped in a list.
    tab_list: A list of tabs to display.

Returns:
    A dictionary with metadata specifying that it is to be rendered
    as a page containing multiple elements and/or tabs.