if this is going to live in a branch, no point to the #if
math_shift returns
replace std::array and auto in make_shuffle_bytes_mask