#define _USE_MATH_DEFINES #include //cin, cout #include //vector #include //sort,min,max,count #include //string,getline, to_string #include //abs(int) #include //swap, pair #include //deque #include //INT_MAX #include //bitset #include //sqrt, ceil. M_PI, pow, sin #include //fixed #include //setprecision #include //stringstream #include //gcd, assumlate #include //randam_device #include //numeric_limits #include //tm using namespace std; constexpr int64_t D_MOD = 1000000007; constexpr int64_t F_MOD = 998244353; int main() { int T; cin >> T; int x1, y1, x2, y2; char d1, d2; int dx, dy; bool flg; for (int i = 0; i < T; i++) { cin >> x1 >> y1 >> d1 >> x2 >> y2 >> d2; flg = false; dx = abs(x1 - x2); dy = abs(y1 - y2); if (x1 > x2 && y1 < y2) { if (dx == dy) { if ((d1 == 'U' && d2 == 'R') || (d1 == 'L' && d2 == 'D')) { flg = true; } } } else if (x1 == x2 && y1 < y2) { if (1) { if (d1 == 'U' && d2 == 'D') { flg = true; } } } else if (x1 < x2 && y1 < y2) { if (dx == dy) { if ((d1 == 'U' && d2 == 'L') || (d1 == 'R' && d2 == 'D')) { flg = true; } } } else if (x1 > x2 && y1 == y2) { if (1) { if (d1 == 'L' && d2 == 'R') { flg = true; } } } else if (x1 < x2 && y1 == y2) { if (1) { if (d1 == 'R' && d2 == 'L') { flg = true; } } } else if (x1 > x2 && y1 > y2) { if (dx == dy) { if ((d1 == 'D' && d2 == 'R') || (d1 == 'L' && d2 == 'U')) { flg = true; } } } else if (x1 == x2 && y1 > y2) { if (1) { if (d1 == 'D' && d2 == 'U') { flg = true; } } } else { if (dx == dy) { if ((d1 == 'D' && d2 == 'L') || (d1 == 'R' && d2 == 'U')) { flg = true; } } } if (flg) { cout << "Yes" << endl; } else { cout << "No" << endl; } } return 0; }