template<class T2, class E2> requires (!is_void_v<T2>) friend constexpr bool operator=(const expected& x, const expected<T2, E2>& y);
template<class T2> friend constexpr bool operator=(const expected& x, const T2& v);
template<class E2> friend constexpr bool operator=(const expected& x, const unexpected<E2>& e);