def traverse(object, path, default=None, request=None):
    """
        Traverse *path* relative to the given object.

        :param str path: a string with path segments separated by '/'.
        :keyword request: Passed in when traversing from
            presentation code.  This allows paths like "@@foo" to work.
        :raises zope.location.interfaces.LocationError: if *path* cannot be found

        .. note:: Calling `traverse` with a path argument taken from an
            untrusted source, such as an HTTP request form variable,
            is a bad idea.  It could allow a maliciously constructed
            request to call code unexpectedly.  Consider using
            `traverseName` instead.
        """
