code: def select_one(self, selector):
          ''' Query this document for objects that match the given selector.
          Raises an error if more than one object is found.  Returns
          single matching object, or None if nothing is found
  
          Args:
              selector (JSON-like query dictionary) : you can query by type or by
                  name, e.g. ``{"type": HoverTool}``, ``{"name": "mycircle"}``
  
          Returns:
              Model or None
  
          '''
          result = list(self.select(selector))
          if len(result) > 1:
              raise ValueError("Found more than one model matching %s: %r" % (selector, result))
          if len(result) == 0:
              return None
          return result[0f select_one(self, selector):
          ''' Query this document for objects that match the given selector.
          Raises an error if more than one object is found.  Returns
          single matching object, or None if nothing is found
  
          Args:
              selector (JSON-like query dictionary) : you can query by type or by
                  name, e.g. ``{"type": HoverTool}``, ``{"name": "mycircle"}``
  
          Returns:
              Model or None
  
          '''
          result = list(self.select(selector))
          if len(result) > 1:
              raise ValueError("Found more than one model matching %s: %r" % (selector, result))
          if len(result) == 0:
              return None
          return result[0]
docs: Query this document for objects that match the given selector.
          Raises an error if more than one object is found.  Returns
          single matching object, or None if nothing is found
  
          Args:
              selector (JSON-like query dictionary) : you can query by type or by
                  name, e.g. ``{"type": HoverTool}``, ``{"name": "mycircle"}``
  
          Returns:
              Model or None