code: def pull(self):
          ''' Pull the server's state and set it as session.document.
  
          If this is called more than once, session.document will be the same
          object instance but its contents will be overwritten.
  
          Automatically calls :func:`connect` before pulling.
  
          '''
          self.connect()
          if not self.connected:
              raise IOError("Cannot pull session document because we failed to connect to the server (to start the server, try the 'bokeh serve' command)")
  
          if self.document is None:
              doc = Document()
          else:
              doc = self.document
          self._connection.pull_doc(doc)
          if self.document is None:
              self._attach_document(docf pull(self):
          ''' Pull the server's state and set it as session.document.
  
          If this is called more than once, session.document will be the same
          object instance but its contents will be overwritten.
  
          Automatically calls :func:`connect` before pulling.
  
          '''
          self.connect()
          if not self.connected:
              raise IOError("Cannot pull session document because we failed to connect to the server (to start the server, try the 'bokeh serve' command)")
  
          if self.document is None:
              doc = Document()
          else:
              doc = self.document
          self._connection.pull_doc(doc)
          if self.document is None:
              self._attach_document(doc)
docs: Pull the server's state and set it as session.document.
  
          If this is called more than once, session.document will be the same
          object instance but its contents will be overwritten.
  
          Automatically calls :func:`connect` before pulling.