#include <bits/stdc++.h>
using namespace std;
vector<set<int> > S;
set<int> Emp;
int main() {
  int vote[101000], totpos, totneg, n, m, i, tru[101000], lie[101000],
      neg[101000], pos[101000], crime[101000], temp;
  while (scanf("%d", &n) != EOF) {
    S.clear();
    scanf("%d", &m);
    totpos = 0;
    totneg = 0;
    for (i = 0; i <= n; i++) {
      S.push_back(Emp);
      pos[i] = 0;
      neg[i] = 0;
      crime[i] = 0;
      lie[i] = 0;
      tru[i] = 0;
    }
    for (i = 1; i <= n; i++) {
      scanf("%d", &vote[i]);
      temp = vote[i];
      if (temp > 0) {
        S[temp].insert(i);
        totpos++;
        pos[temp]++;
      } else {
        S[-temp].insert(-i);
        totneg++;
        neg[-temp]++;
      }
    }
    int criminal = 0;
    for (i = 1; i <= n; i++) {
      if (pos[i] + totneg - neg[i] == m) {
        crime[i] = 1;
        criminal++;
      } else {
      }
    }
    for (i = 1; i <= n; i++) {
      if (vote[i] > 0) {
        if (crime[vote[i]] == 1) {
          tru[i] = 1;
        }
        if (criminal > 1) lie[i] = 1;
      } else {
        if (crime[-vote[i]] == 1) {
          lie[i] = 1;
        }
        if (criminal > 1) tru[i] = 1;
      }
    }
    for (i = 1; i <= n; i++) {
      if (tru[i] + lie[i] == 2) {
        printf("Not Defined\n");
      } else {
        if (tru[i] == 1) {
          printf("Truth\n");
        } else {
          printf("Lie\n");
        }
      }
    }
  }
  return 0;
}
