#include <bits/stdc++.h>
using namespace std;
const int INF = 0x3F3F3F3F;
const int MAXN = 100001;
char mat[5][5];
const int mx[4] = {0, 1, 0, 1};
const int my[4] = {0, 0, 1, 1};
inline void solve(int test) {
  for (int i = 0; i < 4; ++i) {
    scanf("%s", mat[i]);
    ;
  }
  bool IQ = false;
  for (int i = 0; i < 3; ++i) {
    for (int j = 0; j < 3; ++j) {
      int white = 0, black = 0;
      for (int k = 0; k < 4; ++k) {
        int ni = i + mx[k], nj = j + my[k];
        if (mat[ni][nj] == '#')
          black++;
        else
          white++;
      }
      if (abs(black - white) == 2 || abs(black - white) == 4) IQ = true;
    }
  }
  printf("%s\n", IQ ? "YES" : "NO");
}
int main() {
  solve(0);
  return 0;
}
