added bitset implementation