#include <bits/stdc++.h>
int main() {
  char s[4][4];
  for (int i = 0; i < 4; i++) scanf("%s", s[i]);
  int b = 0;
  for (int i = 0; i < 4; i++) {
    for (int j = 0; j < 4; j++) {
      if (s[i][j] == '.') {
        if (i > 0 && s[i - 1][j] == 'x' && i < 3 && s[i + 1][j] == 'x') b = 1;
        if (j > 0 && s[i][j - 1] == 'x' && j < 3 && s[i][j + 1] == 'x') b = 1;
        if (j > 0 && i > 0 && s[i - 1][j - 1] == 'x' && j < 3 && i < 3 &&
            s[i + 1][j + 1] == 'x')
          b = 1;
        if (j > 0 && i > 0 && j < 3 && i < 3 && s[i - 1][j + 1] == 'x' &&
            s[i + 1][j - 1] == 'x')
          b = 1;
        if (i > 1 && s[i - 1][j] == 'x' && s[i - 2][j] == 'x') b = 1;
        if (j > 1 && s[i][j - 1] == 'x' && s[i][j - 2] == 'x') b = 1;
        if (i < 2 && s[i + 1][j] == 'x' && s[i + 2][j] == 'x') b = 1;
        if (j < 2 && s[i][j + 1] == 'x' && s[i][j + 2] == 'x') b = 1;
        if (i > 1 && j > 1 && s[i - 1][j - 1] == 'x' && s[i - 2][j - 2] == 'x')
          b = 1;
        if (i < 2 && j < 2 && s[i + 1][j + 1] == 'x' && s[i + 2][j + 2] == 'x')
          b = 1;
        if (i > 1 && j < 2 && s[i - 1][j + 1] == 'x' && s[i - 2][j + 2] == 'x')
          b = 1;
        if (i < 2 && j > 1 && s[i + 1][j - 1] == 'x' && s[i + 2][j - 2] == 'x')
          b = 1;
      }
    }
  }
  if (b)
    printf("YES\n");
  else
    printf("NO\n");
}
