#include <bits/stdc++.h>
using namespace std;
char a[20], b[20], st[20], st2[20], top, top2;
int main() {
  a[1] = getchar();
  a[2] = getchar();
  scanf("\n");
  a[4] = getchar();
  a[3] = getchar();
  scanf("\n");
  b[1] = getchar();
  b[2] = getchar();
  scanf("\n");
  b[4] = getchar();
  b[3] = getchar();
  if (a[1] == 'A') {
    st[++top] = a[1];
    if (a[2] != 'X') st[++top] = a[2];
    if (a[3] != 'X') st[++top] = a[3];
    if (a[4] != 'X') st[++top] = a[4];
  } else if (a[2] == 'A') {
    st[++top] = a[2];
    if (a[3] != 'X') st[++top] = a[3];
    if (a[4] != 'X') st[++top] = a[4];
    if (a[1] != 'X') st[++top] = a[1];
  } else if (a[3] == 'A') {
    st[++top] = a[3];
    if (a[4] != 'X') st[++top] = a[4];
    if (a[1] != 'X') st[++top] = a[1];
    if (a[2] != 'X') st[++top] = a[2];
  } else if (a[4] == 'A') {
    st[++top] = a[4];
    if (a[1] != 'X') st[++top] = a[1];
    if (a[2] != 'X') st[++top] = a[2];
    if (a[3] != 'X') st[++top] = a[3];
  }
  top = 0;
  if (b[1] == 'A') {
    st2[++top] = b[1];
    if (b[2] != 'X') st2[++top] = b[2];
    if (b[3] != 'X') st2[++top] = b[3];
    if (b[4] != 'X') st2[++top] = b[4];
  } else if (b[2] == 'A') {
    st2[++top] = b[2];
    if (b[3] != 'X') st2[++top] = b[3];
    if (b[4] != 'X') st2[++top] = b[4];
    if (b[1] != 'X') st2[++top] = b[1];
  } else if (b[3] == 'A') {
    st2[++top] = b[3];
    if (b[4] != 'X') st2[++top] = b[4];
    if (b[1] != 'X') st2[++top] = b[1];
    if (b[2] != 'X') st2[++top] = b[2];
  } else if (b[4] == 'A') {
    st2[++top] = b[4];
    if (b[1] != 'X') st2[++top] = b[1];
    if (b[2] != 'X') st2[++top] = b[2];
    if (b[3] != 'X') st2[++top] = b[3];
  }
  if ((st[1] == st2[1]) && (st[2] == st2[2]) && (st[3] == st2[3]))
    printf("YES\n");
  else
    printf("NO\n");
}
