#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, m;
  scanf("%d", &(n)), scanf("%d", &(m));
  int a[(100000 + 10)][2];
  for (int i(0), _n(n); i < _n; ++i) {
    scanf("%d", &a[i][1]);
    if (a[i][1] > 0)
      a[i][0] = '+';
    else
      a[i][0] = '-', a[i][1] = -a[i][1];
  }
  int yes[(100000 + 10)], no[(100000 + 10)];
  memset((yes), 0, sizeof(yes));
  memset((no), 0, sizeof(no));
  for (int i(0), _n(n); i < _n; ++i) {
    if (a[i][0] == '+')
      yes[a[i][1]]++;
    else
      no[a[i][1]]++;
  }
  int sno = 0;
  for (int i(1), _h(n); i <= _h; ++i) sno += no[i];
  bool may[(100000 + 10)];
  memset((may), false, sizeof(may));
  int cnt = 0;
  for (int i(1), _h(n); i <= _h; ++i)
    if (yes[i] + sno - no[i] == m) {
      may[i] = true;
      cnt++;
    }
  for (int i(0), _n(n); i < _n; ++i) {
    if (a[i][0] == '+') {
      if (may[a[i][1]] && cnt == 1)
        puts("Truth");
      else if (may[a[i][1]])
        puts("Not defined");
      else
        puts("Lie");
    } else {
      if (may[a[i][1]] && cnt == 1)
        puts("Lie");
      else if (may[a[i][1]])
        puts("Not defined");
      else
        puts("Truth");
    }
  }
  return 0;
}
