#include <bits/stdc++.h>
#pragma GCC optimize("O3")
#pragma GCC target("tune=native")
using namespace std;
const int MAX = 1e5 + 5;
const long long MOD = 1000000007;
const long long MOD2 = 2010405347;
const long long INF = 2e18;
const int dr[] = {1, 0, -1, 0, 1, 1, -1, -1, 0};
const int dc[] = {0, 1, 0, -1, 1, -1, 1, -1, 0};
const double pi = acos(-1);
const double EPS = 1e-9;
const int block = 600;
int n, k, a[MAX], b[MAX], x, y, z[MAX], c, tmp;
bool st[MAX];
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  cin >> n >> k;
  for (int i = 1; i <= n; ++i) {
    cin >> z[i];
    if (z[i] > 0)
      ++a[z[i]], ++x;
    else
      ++b[-z[i]], ++y;
  }
  for (int i = 1; i <= n; ++i) {
    tmp = a[i] + y - b[i];
    if (tmp == k) st[i] = 1, ++c;
  }
  if (!c) return 1;
  if (c == 1) {
    for (int i = 1; i <= n; ++i) {
      if (z[i] > 0) {
        if (st[z[i]])
          cout << "Truth\n";
        else
          cout << "Lie\n";
      } else {
        if (!st[-z[i]])
          cout << "Truth\n";
        else
          cout << "Lie\n";
      }
    }
  } else {
    for (int i = 1; i <= n; ++i) {
      if (z[i] > 0) {
        if (st[z[i]])
          cout << "Not defined\n";
        else
          cout << "Lie\n";
      } else {
        if (!st[-z[i]])
          cout << "Truth\n";
        else
          cout << "Not defined\n";
      }
    }
  }
  return 0;
}
