#include <bits/stdc++.h>
using namespace std;
const long long mod = 10000007;
const long long INF = LLONG_MAX;
const int N = 1001000;
void solve () {
int n;
string s, s1;
cin >> n >> s >> s1;
reverse (s.begin(), s.end());
reverse (s1.begin(), s1.end());
for (int i = 0; i < n - 1; i++) {
if (s[i] == '1' && s1[i] == '0') {
s[i + 1] = '1';
} else if (s[i] == '0' && s1[i] == '1') {
s[i + 1] = '0';
} else {
if (s1[i] == '0' && s1[i + 1] == '1') {
s[i + 1] = '1';
}
if (s1[i] == '1' && s1[i + 1] == '0') {
s[i + 1] = '0';
}
}
}
if (s[n - 1] == s1[n - 1]) {
cout << "YES";
} else {
cout << "NO";
}
}
int main () {
ios::sync_with_stdio(false);
cin.tie(nullptr);
long long t;
cin >> t;
while (t--) {
solve();
cout << "\n";
}
return 0;
}