#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
const int mod = 1e9 + 7;
const int maxn = 110;
int n;
string str;
int ind;
string nxts() {
  if (ind == str.length()) return "";
  while (ind < str.length() && str[ind] == ' ') ind++;
  if (str[ind] >= '0' && str[ind] <= '9' ||
      str[ind] >= 'a' && str[ind] <= 'z' ||
      str[ind] >= 'A' && str[ind] <= 'Z') {
    int s = ind;
    while (ind < str.length() && (str[ind] >= '0' && str[ind] <= '9' ||
                                  str[ind] >= 'a' && str[ind] <= 'z' ||
                                  str[ind] >= 'A' && str[ind] <= 'Z'))
      ind++;
    return str.substr(s, ind - s);
  } else
    return string(1, str[ind++]);
}
map<string, char> m;
string cur;
char expr();
char addend();
char mul();
char expr() {
  char pre = addend();
  while (cur == "+" || cur == "-") {
    string now = cur;
    char nxt = addend();
    if (nxt == 'x' || (now == "-" && nxt == '+')) pre = 'x';
    if (pre != 'x') pre = '+';
  }
  return pre;
}
char addend() {
  char pre = mul();
  while (cur == "*" || cur == "/") {
    string now = cur;
    char nxt = mul();
    if (pre == '+' || nxt == '+' || nxt == 'x' || (now == "/" && nxt == '*'))
      pre = 'x';
    if (pre != 'x') pre = '*';
  }
  return pre;
}
char mul() {
  cur = nxts();
  if (cur == "(") {
    char pre = expr();
    cur = nxts();
    return pre == 'x' ? 'x' : 'o';
  } else {
    string name = cur;
    cur = nxts();
    if (m.find(name) != m.end())
      return m[name];
    else
      return 'o';
  }
}
int main() {
  cin >> n;
  getline(cin, str);
  for (int i = (0); i < (int)(n); ++i) {
    getline(cin, str);
    ind = 0;
    nxts();
    nxts();
    string name = nxts();
    m[name] = expr();
  }
  getline(cin, str);
  ind = 0;
  char ans = expr();
  cout << (ans == 'x' ? "Suspicious" : "OK");
  return 0;
}
