added bitvector data structure