#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:20000000")
using namespace std;
int ri() {
  int x;
  scanf("%d", &x);
  return x;
}
long long rll() {
  long long x;
  scanf("%lld", &x);
  return x;
}
int p[100500];
int q[100500];
int in[100500];
void solve() {
  int n = ri(), m = ri();
  int T = 0;
  for (int i = (int)(1); i <= (int)(n); i++) {
    getchar();
    char c = getchar();
    in[i] = ri();
    if (c == '+')
      p[in[i]]++;
    else {
      T++;
      q[in[i]]++;
      in[i] *= -1;
    }
  }
  int ok = 0;
  bool omg = false;
  for (int i = (int)(1); i <= (int)(n); i++) {
    if (p[i] + T - q[i] == m) {
      if (ok) {
        ok = -1;
        break;
      }
      ok = i;
    }
    if (q[i] == m) {
      if (ok) {
        ok = -1;
        break;
      }
      ok = i;
      omg = true;
    }
  }
  if (ok == -1) {
    for (int i = (int)(1); i <= (int)(n); i++) cout << "Not defined" << endl;
    return;
  }
  if (ok) {
    if (!omg) {
      for (int i = (int)(1); i <= (int)(n); i++)
        if (in[i] == ok)
          cout << "Truth" << endl;
        else if (in[i] == -ok)
          cout << "Lie" << endl;
        else if (in[i] > 0)
          cout << "Lie" << endl;
        else
          cout << "Truth" << endl;
    } else {
      for (int i = (int)(1); i <= (int)(n); i++)
        if (in[i] == -ok)
          cout << "Truth" << endl;
        else if (in[i] == ok)
          cout << "Lie" << endl;
        else
          cout << "Not defined" << endl;
    }
    return;
  }
  for (int i = (int)(1); i <= (int)(n); i++)
    if (in[i] > 0)
      cout << "Lie" << endl;
    else
      cout << "Not defined" << endl;
}
int main() {
  solve();
  return 0;
}
