#include <bits/stdc++.h>
using namespace std;
const long double eps = 1e-10;
const long double infty = 1e+10;
string board[1 << 4];
int moves[9][2] = {{0, 0},  {1, 1},  {-1, -1}, {1, 0}, {0, 1},
                   {-1, 0}, {0, -1}, {1, -1},  {-1, 1}};
bool isValid(int i, int j, int move) {
  if (i < 0 || i > 8 - 1 || j < 0 || j > 8 - 1) return false;
  if (i - move >= 0 && board[i - move][j] == 'S') return false;
  if (i - move - 1 >= 0 && board[i - move - 1][j] == 'S') return false;
  return true;
}
bool used[1 << 3][1 << 3][1 << 4];
bool bfs() {
  queue<pair<pair<int, int>, int> > q;
  q.push(make_pair(make_pair(7, 0), 0));
  memset(used, 0, sizeof(used));
  while (!q.empty()) {
    pair<pair<int, int>, int> curr = q.front();
    q.pop();
    if (used[curr.first.first][curr.first.second][curr.second]) continue;
    used[curr.first.first][curr.first.second][curr.second] = true;
    if (curr.second > 8 || (curr.first.first == 0 && curr.first.second == 7))
      return true;
    for (int i = 0; i < 9; i++) {
      if (isValid(curr.first.first + moves[i][0],
                  curr.first.second + moves[i][1], curr.second))
        q.push(make_pair(make_pair(curr.first.first + moves[i][0],
                                   curr.first.second + moves[i][1]),
                         curr.second + 1));
    }
  }
  return false;
}
int main() {
  for (long long i = 0; i < 8; i++) cin >> board[i];
  if (bfs())
    cout << "WIN" << endl;
  else
    cout << "LOSE" << endl;
  return 0;
}
