#include <bits/stdc++.h>
using namespace std;
static const double EPS = 1e-6;
inline int ROUND(double x) { return (int)(x + 0.5); }
inline bool ISINT(double x) { return fabs(ROUND(x) - x) < EPS; }
inline bool ISEQUAL(double x, double y) {
  return fabs(x - y) <= EPS * max(fabs(x), fabs(y));
}
vector<string> vs;
bool survived = false;
void dfs(int turn, int y, int x) {
  if (survived) {
    return;
  }
  if (((0) <= (y - turn) && (y - turn) <= (7)) && vs[y - turn][x] == 'S') {
    return;
  } else if (turn == 7) {
    survived = true;
    return;
  }
  const static int dy[] = {-1, -1, 0, 1, 1, 1, 0, -1, 0};
  const static int dx[] = {0, 1, 1, 1, 0, -1, -1, -1, 0};
  for (int d = 0; d < 9; d++) {
    const int ny = y + dy[d];
    const int nx = x + dx[d];
    if (((0) <= (ny) && (ny) <= (7)) && ((0) <= (nx) && (nx) <= (7)) &&
        (!((0) <= (ny - turn) && (ny - turn) <= (7)) ||
         vs[ny - turn][nx] != 'S')) {
      dfs(turn + 1, ny, nx);
    }
  }
}
int main() {
  vs.clear();
  for (int i = 0; i < 8; i++) {
    char str[256];
    scanf("%s", str);
    vs.push_back(string(str));
  }
  dfs(0, 7, 0);
  if (survived) {
    printf("WIN\n");
  } else {
    printf("LOSE\n");
  }
}
