#include<iostream>
#include<vector>
using namespace std;
vector<int> findNumsAppearOnce(vector<int>& nums) {
int eO = 0, eOhasOne = 0;
for (int curNum : nums) {
eO ^= curNum;
}
int rightOne = eO & (~eO + 1);
for (int cur : nums) {
if ((cur & rightOne) == 0) {
eOhasOne ^= cur;
}
}
vector<int>b;
b.push_back(eOhasOne);
b.push_back((eO ^ eOhasOne));
return b;
}