#include <bits/stdc++.h>
using namespace std;
struct Position {
  int r, c, t;
  Position(int r, int c, int t) {
    this->r = r;
    this->c = c;
    this->t = t;
  }
};
int main() {
  vector<string> board;
  vector<pair<int, int> > s;
  for (int r = 0; r < 8; r++) {
    string line;
    cin >> line;
    board.push_back(line);
    for (int c = 0; c < 8; c++)
      if (line[c] == 'S') s.push_back(make_pair(r, c));
  }
  queue<Position> que;
  que.push(Position(7, 0, 0));
  int dr[] = {1, 1, 0, -1, -1, -1, 0, 1, 0};
  int dc[] = {0, 1, 1, 1, 0, -1, -1, -1, 0};
  while (!que.empty()) {
    Position pos = que.front();
    que.pop();
    if (pos.t > 7) break;
    for (int i = 0; i < 9; i++) {
      int nr = pos.r + dr[i];
      int nc = pos.c + dc[i];
      if (0 <= nr && nr < 8 && 0 <= nc && nc < 8) {
        bool isCollision = false;
        for (int j = 0; j < (int)s.size(); j++) {
          if ((nr == s[j].first + pos.t && nc == s[j].second) ||
              (nr == s[j].first + pos.t + 1 && nc == s[j].second)) {
            isCollision = true;
            break;
          }
        }
        if (!isCollision) {
          que.push(Position(nr, nc, pos.t + 1));
        }
      }
    }
  }
  cout << (que.empty() ? "LOSE" : "WIN") << endl;
}
