#include <bits/stdc++.h>
using namespace std;
char grid[9][9];
queue<pair<pair<int, int>, int>> myq;
int dx[] = {1, 1, 1, 0, 0, -1, -1, -1, 0};
int dy[] = {1, 0, -1, 1, -1, 1, 0, -1, 0};
bool does_exist(int row, int col) {
  return (row < 8 and row >= 0 and col < 8 and col >= 0);
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  for (int i = 0; i < 8; i++)
    for (int j = 0; j < 8; j++) cin >> grid[i][j];
  myq.push({{7, 0}, 1});
  while (not myq.empty()) {
    if (myq.front().second == 8) {
      cout << "WIN";
      return 0;
    }
    auto it = myq.front();
    myq.pop();
    for (int i = 0; i < 9; i++) {
      int I = it.first.first + dx[i];
      int J = it.first.second + dy[i];
      if (does_exist(I, J) and I - it.second >= 0 and
          grid[I - it.second][J] != 'S' and grid[I - it.second + 1][J] != 'S')
        myq.push({{I, J}, it.second + 1});
    }
  }
  cout << "LOSE";
  return 0;
}
