public function down(callable $fn)
    {
        $parent = $this->with($this->_with)->getParent();
        while ($parent) {
            $response = call_user_func_array($fn, [$parent]);
            if ($response) {
                return $response;
            }
            $parent = $parent->with($this->_with)->getParent();
        }

        return false;
    }