#include <bits/stdc++.h>
using namespace std;
string f[8];
int dp[40][8][8];
const int UNKNOWN = 0;
const int OK = 1;
const int BAD = 2;
int A_row, A_col, M_row, M_col;
vector<pair<int, int>> s[8];
bool good(long long step, long long row, long long col) {
  if (row < 0 || row >= 8 || col < 0 || col >= 8) return false;
  if (step < 8)
    for (auto p : s[step])
      if (p.first == row && p.second == col) return false;
  return true;
}
long long calc(long long step, long long row, long long col) {
  if (step >= 40) return BAD;
  if (!good(step, row, col)) return BAD;
  if (dp[step][row][col]) return dp[step][row][col];
  if (step < 8) {
    for (auto p : s[step]) {
      if (p.first == row && p.second == col) {
        return dp[step][row][col] = BAD;
      }
    }
  }
  for (int i = -1; i <= 1; i++)
    for (int j = -1; j <= 1; j++)
      if (good(step, row + i, col + j)) calc(step + 1, row + i, col + j);
  return dp[step][row][col] = OK;
}
int main() {
  ios::sync_with_stdio(0);
  for (int i = 0; i < 8; i++) {
    cin >> f[i];
  }
  for (int i = 0; i < 8; i++) {
    for (int j = 0; j < 8; j++) {
      if (f[i][j] == 'A') {
        A_row = i;
        A_col = j;
      } else if (f[i][j] == 'M') {
        M_row = i;
        M_col = j;
      } else if (f[i][j] == 'S') {
        s[0].push_back({i, j});
      }
    }
  }
  for (auto p : s[0]) {
    for (int i = 1; i < 8; i++) {
      s[i].push_back({p.first + i, p.second});
    }
  }
  cerr << "SO, M on " << M_row << ' ' << M_col << endl;
  cerr << "AND A on " << A_row << ' ' << A_col << endl;
  calc(0, M_row, M_col);
  for (int i = 0; i < 40; i++) {
    if (dp[i][A_row][A_col] == OK) {
      cout << "WIN" << endl;
      return 0;
    }
  }
  cout << "LOSE" << endl;
}
