#include <bits/stdc++.h>
using namespace std;
const int N = 100010;
int a[N], b[N];
bool p[N];
vector<int> P;
pair<bool, int> c[N];
int num(string s) {
  int x = 0;
  for (int i = 1; i < s.size(); i++) x = x * 10 + (s[i] - '0');
  return x;
}
int main() {
  int n, m, t = 0, T = 0;
  string s;
  cin >> n >> m;
  for (int i = 0; i < n; i++) {
    cin >> s;
    if (s[0] == '+') {
      a[num(s)]++;
      c[i + 1] = {0, num(s)};
    } else {
      b[num(s)]++;
      t++;
      c[i + 1] = {1, num(s)};
    }
  }
  for (int i = 1; i <= n; i++) {
    if (a[i] + t - b[i] == m) {
      p[i] = 1;
      P.push_back(i);
      T++;
    }
  }
  if (T == 1) {
    for (int i = 1; i <= n; i++) {
      if (c[i].first == 0) {
        if (c[i].second == P[0]) {
          cout << "Truth\n";
        } else {
          cout << "Lie\n";
        }
      } else {
        if (c[i].second == P[0]) {
          cout << "Lie\n";
        } else {
          cout << "Truth\n";
        }
      }
    }
    return 0;
  }
  for (int i = 1; i <= n; i++) {
    if (c[i].first == 0) {
      if (p[c[i].second]) {
        cout << "Not defined\n";
      } else {
        cout << "Lie\n";
      }
    } else {
      if (p[c[i].second]) {
        cout << "Not defined\n";
      } else {
        cout << "Truth\n";
      }
    }
  }
  return 0;
}
