#include <di/meta/compare.h>
template<typename T, typename Category partial_ordering>
(detail::ComparesAs<meta::Type<detail::DefinitelyThreeWayComparableWith<T, T>>, Category>) ||
(detail::WeaklyEqualityComparableWith<T, T> && detail::PartiallyOrderedWith<T, T> &&
detail::WeaklyThreeWayComparableWith<T, T, Category>)