speed: use bitfield instead of bool list