1impl Solution {2pub fn single_number(nums: Vec<i32>) -> Vec<i32> {3let xor = nums.iter().fold(0, |acc, x| acc ^ x);4let r = xor & !(xor - 1);5let mut answer = vec![0, 0];6for n in nums.iter() {7if n & r == 0 {8answer[0] ^= *n;9} else {10answer[1] ^= *n;11}12}13answer14}15}