code: def contains(self, obj):
          
          if not isinstance(obj, (Node, Wikicode)):
              return obj in self
          try:
              self._do_strong_search(obj, recursive=True)
          except ValueError:
              return False
          return True
docs: Return whether this Wikicode object contains *obj*.
  
          If *obj* is a :class:`.Node` or :class:`.Wikicode` object, then we
          search for it exactly among all of our children, recursively.
          Otherwise, this method just uses :meth:`.__contains__` on the string.