Hey! Is this UB? ```c++
struct A {
int a, b, c, d, e;
int& operator[](size_t index) noexcept;
}
int& A::operator[](size_t index) noexcept {
assert(index >= 0 && index < 5);
return *(reinterpret_cast<int*>(this) + index);
/*
if (index == 0) return a;
if (index == 1) return b; ...
*/
}
P.S. an std::array instead of explicit variables is better, I know. This is a watered-down example.