#include<iostream>
#include<cstdio>

using namespace std;

class Dice {
public:
	int F[6];
	void roleE() {
		int a = F[0]; F[0] = F[3]; F[3] = F[5]; F[5] = F[2]; F[2] = a;
	}
	void roleS() {
		int a = F[0]; F[0] = F[4]; F[4] = F[5]; F[5] = F[1]; F[1] = a;
	}
	void roleW() {
		int a = F[0]; F[0] = F[2]; F[2] = F[5]; F[5] = F[3]; F[3] = a;
	}
	void roleN() {
		int a = F[0]; F[0] = F[1]; F[1] = F[5]; F[5] = F[4]; F[4] = a;
	}
};

int main() {
	Dice dice1, dice2;
	int T = 0;
	for (int i = 0; i < 6; i++) {
		cin >> dice1.F[i];
	}
	for (int j = 0; j < 6; j++) {
		cin >> dice2.F[j];
	}
	for (int a = 0; a < 6; a++) {
		while (true) {
			if (dice2.F[0] == dice1.F[0]) break;
			else if (dice2.F[2] == dice1.F[0] || dice2.F[3] == dice1.F[0]) dice2.roleE();
			else dice2.roleS();
		}
		int f[4] = { 1, 2, 4, 3 };
		for (int k = 0; k < 4; k++) {
			if (dice2.F[f[k]] == dice1.F[1] && dice2.F[f[(k + 1) % 4]] == dice1.F[2] &&
				dice2.F[f[(k + 2) % 4]] == dice1.F[4] && dice2.F[f[(k + 3) % 4]] == dice1.F[3]) T = 1;
		}
		if (T == 1) break;
		if (a + 1 == 1) dice1.roleN();
		else if (a + 1 == 2) dice1.roleW();
		else if (a + 1 == 3) { dice1.roleW(); dice1.roleW(); }
		else if (a + 1 == 4) dice1.roleN();
		else if (a + 1 == 5) dice1.roleN();
	}
	if (T == 0) cout << "No" << endl;
	else cout << "Yes" << endl;
	return 0;
}
