This will fail when `B` is a vector