template <class Lhs, class Output = Lhs>
requires(const Lhs& lhs /* TODO: , u32 rhs */) {
{ lhs >> 2u } -> std::same_as<Output>;
}