Bit Manipulation - Single Number II (Three Copies)
Identify the bug in the following bitwise FSM code snippet for Single Number II:
```python
def singleNumber(nums):
ones = 0
twos = 0
for num in nums:
ones ^= num
twos |= ones & num
common_mask = ~(ones & twos)
ones &= common_mask
twos &= common_mask
return ones
```
