speed: use bitfield instead of bool vec