#include <bits/stdc++.h>
using namespace std;
string s[4];
int codifica() {
  for (int i = 0; i < 4; i++) {
    for (int j = 0; j < 4; j++) {
      if (i <= 1 && s[i][j] == 'x' && s[i + 1][j] == 'x' &&
          s[i + 2][j] == 'x') {
        return 1;
      }
      if (j <= 1 && s[i][j] == 'x' && s[i][j + 1] == 'x' &&
          s[i][j + 2] == 'x') {
        return 1;
      }
      if (i <= 1 && s[i][j] == 'x' && s[i + 1][j + 1] == 'x' &&
          s[i + 2][j + 2] == 'x') {
        return 1;
      }
      if (j >= 2 && i <= 1 && s[i][j] == 'x' && s[i + 1][j - 1] == 'x' &&
          s[i + 2][j - 2] == 'x') {
        return 1;
      }
      if (i >= 2 && j >= 2 && s[i][j] == 'x' && s[i - 1][j - 1] == 'x' &&
          s[i - 2][j - 2] == 'x') {
        return 1;
      }
    }
  }
  return 0;
}
int main() {
  int flag = 0;
  cin >> s[0] >> s[1] >> s[2] >> s[3];
  for (int i = 0; i < 4; i++) {
    for (int j = 0; j < 4; j++) {
      if (s[i][j] == '.') {
        s[i][j] = 'x';
        flag = codifica();
        if (flag == 1) {
          cout << "YES" << endl;
          return 0;
        }
        s[i][j] = '.';
      }
    }
  }
  cout << "NO" << endl;
  return 0;
}
