#include <bits/stdc++.h>
using namespace std;
const int n = 8;
bool vis[n][n][500];
char g[n][n];
char chk[n][n][500];
struct E {
  int linha, coluna, time;
};
const int dr[] = {+0, +1, -1, +0, +0, +1, -1, +1, -1};
const int dc[] = {+0, +0, +0, +1, -1, +1, -1, -1, +1};
void simular() {
  for (int t = 1; t < (int)500; t++) {
    for (int i = 0; i < (int)n; i++) {
      if (chk[0][i][t - 1] == 'S')
        chk[0][i][t] = '.';
      else
        chk[0][i][t] = chk[0][i][t - 1];
      for (int j = n - 1; j >= 1; j--) {
        if (chk[j - 1][i][t - 1] != 'S') {
          if (chk[j][i][t - 1] != 'S')
            chk[j][i][t] = chk[j][i][t - 1];
          else
            chk[j][i][t] = '.';
          continue;
        }
        chk[j][i][t] = chk[j - 1][i][t - 1];
      }
    }
  }
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  for (int i = 0; i < (int)n; i++) {
    for (int j = 0; j < (int)n; j++) {
      cin >> g[i][j];
      chk[i][j][0] = g[i][j];
    }
  }
  simular();
  queue<E> q;
  q.push({7, 0, 0});
  vis[7][0][0] = 1;
  while (!q.empty()) {
    int linha = q.front().linha;
    int coluna = q.front().coluna;
    int tempo = q.front().time;
    q.pop();
    if (chk[linha][coluna][tempo] == 'S') continue;
    if (linha == 0 && coluna == 7) {
      cout << "WIN" << '\n';
      return 0;
    }
    for (int i = 0; i < (int)9; i++) {
      if (linha + dr[i] < 0 || linha + dr[i] >= n || coluna + dc[i] < 0 ||
          coluna + dc[i] >= n)
        continue;
      if (vis[linha + dr[i]][coluna + dc[i]][tempo + 1]) continue;
      if (chk[linha + dr[i]][coluna + dc[i]][tempo + 1] == 'S') continue;
      if (chk[linha + dr[i]][coluna + dc[i]][tempo] == 'S') continue;
      vis[linha + dr[i]][coluna + dc[i]][tempo + 1] = 1;
      q.push({linha + dr[i], coluna + dc[i], tempo + 1});
    }
  }
  cout << "LOSE" << '\n';
  return 0;
}
