#include <bits/stdc++.h>
using namespace std;
const int inf = 1000000000;
long long mod = 1000000007LL;
long long mod2 = 998244353LL;
int r, n;
vector<pair<int, int>> cs;
int dp[105][4];
bool vis[2 * 105];
int main() {
  cin >> r >> n;
  cs.clear();
  for (int i = 1; i <= n; ++i) {
    int x, y;
    scanf("%d%d", &x, &y);
    cs.push_back(make_pair(x, y));
  }
  memset(dp, -1, sizeof(dp));
  for (int i = 0; i < 4; ++i) {
    dp[0][i] = 0;
  }
  for (int i = 1; i <= r; ++i) {
    memset(vis, false, sizeof(vis));
    for (int j = 1; j <= i; ++j) {
      vis[(dp[j - 1][1] ^ dp[i - j][1])] = true;
    }
    dp[i][0] = 0;
    while (vis[dp[i][0]]) dp[i][0]++;
    memset(vis, false, sizeof(vis));
    for (int j = 1; j <= i; ++j) {
      vis[(dp[j - 1][1] ^ dp[i - j][2])] = true;
      if (i - j >= 1) {
        vis[(dp[j - 1][1] ^ dp[i - j][3])] = true;
      }
    }
    dp[i][1] = 0;
    while (vis[dp[i][1]]) dp[i][1]++;
    memset(vis, false, sizeof(vis));
    for (int j = 1; j <= i; ++j) {
      vis[(dp[j - 1][2] ^ dp[i - j][2])] = true;
      if (j > 1 && i - j >= 1) {
        vis[(dp[j - 1][3] ^ dp[i - j][3])] = true;
      }
    }
    dp[i][2] = 0;
    while (vis[dp[i][2]]) dp[i][2]++;
    memset(vis, false, sizeof(vis));
    for (int j = 1; j <= i; ++j) {
      if (i - j >= 1) vis[(dp[j - 1][2] ^ dp[i - j][3])] = true;
      if (j > 1) vis[(dp[j - 1][3] ^ dp[i - j][2])] = true;
    }
    dp[i][3] = 0;
    while (vis[dp[i][3]]) dp[i][3]++;
  }
  sort(cs.begin(), cs.end());
  int res = 0;
  if (cs.empty()) {
    res = dp[r][0];
  } else {
    int x, y;
    for (int i = 0; i < cs.size(); ++i) {
      if (i == 0) {
        x = cs[i].first;
        y = cs[i].second;
        res ^= dp[x - 1][1];
      } else {
        int det = cs[i].first - x - 1;
        if (cs[i].second == y) {
          res ^= dp[det][2];
        } else {
          res ^= dp[det][3];
        }
        x = cs[i].first;
        y = cs[i].second;
      }
    }
    int det = r - x;
    res ^= dp[det][1];
  }
  if (res)
    cout << "WIN" << endl;
  else
    cout << "LOSE" << endl;
  return 0;
}
