#include <iostream>
#include <string>
#include <vector>
using namespace std;

class DICE{
private:
	int temp;
	
public:
    int ii,iii,ji,ij;
	int ans,foo,fooo,ansDice3;
	int dice[6],dice2[6];
	int cpyDice[6],cpyDice2[6];
	void cpy(){
		for(ii=0;ii<6;ii++){
			cpyDice[ii]=dice[ii];
		}
	}
	void rollN(){roll(1,5,4);}
	void rollS(){roll(4,5,1);}
	void rollE(){roll(3,5,2);}
	void rollW(){roll(2,5,3);}
	void right(){rollright(1,2,4,3);}
	void rollright(int a,int b,int c,int d){
		temp=dice[a];dice[a]=dice[b];dice[b]=dice[c];dice[c]=dice[d];dice[d]=temp;
	}
		//2->3 3->5 5-4 4-2
	void roll(int a,int b,int c){
		temp=dice[0];dice[0]=dice[a];
		dice[a]=dice[b];dice[b]=dice[c];dice[c]=temp;
	}
	void fi(char ch){
		if(ch=='N'){rollN();}
		if(ch=='S'){rollS();}
		if(ch=='W'){rollW();}
		if(ch=='E'){rollE();}
	}
	void NE(){
		for(ii=0;ii<4;ii++){
			for(iii=0;iii<4;iii++){
				if(foo==dice[0] && fooo==dice[1]){
					ans=dice[2];
				}
				if(dice[0]==dice2[0] && dice[1]==dice2[1] && dice[2]==dice2[2] && dice[3]==dice2[3] && dice[4]==dice2[4] && dice[5]==dice2[5]){
					ansDice3=1;
				}
				rollE();
			}
			rollN();
		}
	}
	void NW(){
		for(ii=0;ii<4;ii++){
			//rollN();
			for(ji=0;ji<4;ji++){
				if(foo==dice[0] && fooo==dice[1]){
					ans=dice[2];
				}
				if(dice[0]==dice2[0] && dice[1]==dice2[1] && dice[2]==dice2[2] && dice[3]==dice2[3] && dice[4]==dice2[4] && dice[5]==dice2[5]){
					ansDice3=1;
				}
				rollW();
			}
			rollN();
		}
	}
	void SE(){
		for(ii=0;ii<4;ii++){
			//rollS();
			for(ji=0;ji<4;ji++){
				if(foo==dice[0] && fooo==dice[1]){
					ans=dice[2];
				}
				if(dice[0]==dice2[0] && dice[1]==dice2[1] && dice[2]==dice2[2] && dice[3]==dice2[3] && dice[4]==dice2[4] && dice[5]==dice2[5]){
					ansDice3=1;
				}
				rollE();
			}
			rollS();
		}
	}
	void SW(){
		for(ii=0;ii<4;ii++){
			//rollS();
			
			for(ji=0;ji<4;ji++){
				if(foo==dice[0] && fooo==dice[1]){
					ans=dice[2];
				}
				if(dice[0]==dice2[0] && dice[1]==dice2[1] && dice[2]==dice2[2] && dice[3]==dice2[3] && dice[4]==dice2[4] && dice[5]==dice2[5]){
					ansDice3=1;
				}
				rollW();
			}
			rollS();
		}
	}
	void EN(){
		for(ii=0;ii<4;ii++){
			for(iii=0;iii<4;iii++){
				
				if(foo==dice[0] && fooo==dice[1]){
					ans=dice[2];
				}
				if(dice[0]==dice2[0] && dice[1]==dice2[1] && dice[2]==dice2[2] && dice[3]==dice2[3] && dice[4]==dice2[4] && dice[5]==dice2[5]){
					ansDice3=1;
				}
				rollN();
			}
			rollE();
		}
	}
	void ES(){
		for(ii=0;ii<4;ii++){
			for(iii=0;iii<4;iii++){
				
				if(foo==dice[0] && fooo==dice[1]){
					ans=dice[2];
				}
				if(dice[0]==dice2[0] && dice[1]==dice2[1] && dice[2]==dice2[2] && dice[3]==dice2[3] && dice[4]==dice2[4] && dice[5]==dice2[5]){
					ansDice3=1;
				}
				rollS();
			}
			rollE();
		}
	}
	void WN(){
		for(ii=0;ii<4;ii++){
			for(iii=0;iii<4;iii++){
				
				if(foo==dice[0] && fooo==dice[1]){
					ans=dice[2];
				}
				if(dice[0]==dice2[0] && dice[1]==dice2[1] && dice[2]==dice2[2] && dice[3]==dice2[3] && dice[4]==dice2[4] && dice[5]==dice2[5]){
					ansDice3=1;
				}
				rollN();
			}
			rollW();
		}
	}
	void WS(){
		for(ii=0;ii<4;ii++){
			for(iii=0;iii<4;iii++){
				
				if(foo==dice[0] && fooo==dice[1]){
					ans=dice[2];
				}
				if(dice[0]==dice2[0] && dice[1]==dice2[1] && dice[2]==dice2[2] && dice[3]==dice2[3] && dice[4]==dice2[4] && dice[5]==dice2[5]){
					ansDice3=1;
				}
				rollS();
			}
			rollW();
		}
	}
	void rR(){
		for(ji=0;ji<4;ji++){
			for(ii=0;ii<4;ii++){
				if(foo==dice[0] && fooo==dice[1]){
					ans=dice[2];
				}
				if(dice[0]==dice2[0] && dice[1]==dice2[1] && dice[2]==dice2[2] && dice[3]==dice2[3] && dice[4]==dice2[4] && dice[5]==dice2[5]){
					ansDice3=1;
				}
				right();
			}
			rollN();
		}

	}
};



int main(){
	DICE c;
	c.ansDice3=0;
	for(int i=0;i<6;i++){
		cin>>c.dice[i];
	}
	for(int i=0;i<6;i++){
		cin>>c.dice2[i];
	}
	/*
    int q,front,up;cin>>q;
	for(int i=0;i<q;i++){
		
			c.cpy();
		
		cin>>up>>front;
		for(int in=0;in<6;in++){
			if(c.dice[in]==up){
				c.foo=c.dice[in];
			}
			if(c.dice[in]==front){
				c.fooo=c.dice[in];
			}
		}
		*/

		//c.foo=c.dice[up-1];
		//c.fooo=c.dice[front-1];
		//c.ans=0;
		/*if(c.foo==c.cpyDice[0] && c.fooo==c.cpyDice[1]){
					c.ans=c.cpyDice[2];
					cout<<c.ans<<endl;
				}*/
		while(1){
		c.rR();
		if(c.ansDice3!=0 ){
			cout<<"Yes"<<endl;
			break;
		}
		c.NE();
		if(c.ansDice3!=0 ){
			cout<<"Yes"<<endl;
			break;
		}
		c.NW();
		if(c.ansDice3!=0 ){
			cout<<"Yes"<<endl;
			break;
		}
		c.SE();
		if(c.ansDice3!=0 ){
			cout<<"Yes"<<endl;
			break;
		}
		c.SW();
		if(c.ansDice3!=0 ){
			cout<<"Yes"<<endl;
			break;
		}
		c.EN();
		if(c.ansDice3!=0 ){
			cout<<"Yes"<<endl;
			break;
		}
		c.ES();
		if(c.ansDice3!=0 ){
			cout<<"Yes"<<endl;
			break;
		}
		c.WN();
		if(c.ansDice3!=0 ){
			cout<<"Yes"<<endl;
			break;
		}
		c.WS();
		if(c.ansDice3!=0 ){
			cout<<"Yes"<<endl;
			break;
		}
		cout<<"No"<<endl;
		break;
		}
	//int aa;cin>>aa;
		
	return 0;
}

//c.dice[0]==c.dice2[0] && c.dice[1]==c.dice2[1] && c.dice[2]==c.dice2[2] && c.dice[3]==c.dice2[3] && c.dice[4]==c.dice2[4] && c.dice[5]==c.dice2[5]
/*
  N 1->2 2->6 6->5 5->1
  S 1->5 5->6 6->2 2->1
  W 1->3 3->6 6->4 4->1
  E 1->4 4->6 6->3 3->1
  */

Measured memory_bytes: 3100