#include <bits/stdc++.h>
char s[20][20];
char get(int x, int y) {
  return x < 0 || y < 0 || x > 9 || y > 9 ? '.' : s[x][y];
}
bool check(int a, int b) {
  for (int i = -2; i < 3; i++)
    for (int j = -2; j < 3; j++) {
      int x = a + i, y = b + j;
      if (get(x - 2, y - 2) == 'X' && get(x - 1, y - 1) == 'X' &&
          get(x, y) == 'X' && get(x + 1, y + 1) == 'X' &&
          get(x + 2, y + 2) == 'X')
        return 1;
      if (get(x - 2, y + 2) == 'X' && get(x - 1, y + 1) == 'X' &&
          get(x, y) == 'X' && get(x + 1, y - 1) == 'X' &&
          get(x + 2, y - 2) == 'X')
        return 1;
      if (get(x - 2, y) == 'X' && get(x - 1, y) == 'X' && get(x, y) == 'X' &&
          get(x + 1, y) == 'X' && get(x + 2, y) == 'X')
        return 1;
      if (get(x, y - 2) == 'X' && get(x, y - 1) == 'X' && get(x, y) == 'X' &&
          get(x, y + 1) == 'X' && get(x, y + 2) == 'X')
        return 1;
    }
  return 0;
}
bool solve() {
  for (int i = 0; i < 10; i++)
    for (int j = 0; j < 10; j++)
      if (s[i][j] == '.') {
        s[i][j] = 'X';
        if (check(i, j)) return 1;
        s[i][j] = '.';
      }
  return 0;
}
int main() {
  for (int i = 0; i < 10; i++) scanf("%s", s[i]);
  puts(solve() ? "YES" : "NO");
  return 0;
}
