code: def find(node, filter_=None, stop=None, maxlevel=None):
      
      return _find(node, filter_=filter_, stop=stop, maxlevel=maxlevel)
docs: Search for *single* node matching `filter_` but stop at `maxlevel` or `stop`.
  
      Return matching node.
  
      Args:
          node: top node, start searching.
  
      Keyword Args:
          filter_: function called with every `node` as argument, `node` is returned if `True`.
          stop: stop iteration at `node` if `stop` function returns `True` for `node`.
          maxlevel (int): maximum decending in the node hierarchy.
  
      Example tree:
  
      >>> from anytree import Node, RenderTree, AsciiStyle
      >>> f = Node("f")
      >>> b = Node("b", parent=f)
      >>> a = Node("a", parent=b)
      >>> d = Node("d", parent=b)
      >>> c = Node("c", parent=d)
      >>> e = Node("e", parent=d)
      >>> g = Node("g", parent=f)
      >>> i = Node("i", parent=g)
      >>> h = Node("h", parent=i)
      >>> print(RenderTree(f, style=AsciiStyle()).by_attr())
      f
      |-- b
      |   |-- a
      |   +-- d
      |       |-- c
      |       +-- e
      +-- g
          +-- i
              +-- h
  
      >>> find(f, lambda node: node.name == "d")
      Node('/f/b/d')
      >>> find(f, lambda node: node.name == "z")
      >>> find(f, lambda node: b in node.path)  # doctest: +ELLIPSIS
      Traceback (most recent call last):
          ...
      anytree.search.CountError: Expecting 1 elements at maximum, but found 5. (Node('/f/b')... Node('/f/b/d/e'))