#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
const int MOD = 1e9 + 7;
int yes[100005];
int no[100005];
int ans[100005];
int flag[100005][2];
int cnt_yes;
int cnt_no;
int main() {
  freopen("in.txt", "r", stdin);
  int f;
  f = 0;
  int n, k;
  cin >> n >> k;
  memset(yes, 0, sizeof yes);
  ;
  memset(no, 0, sizeof no);
  ;
  memset(ans, 0, sizeof ans);
  ;
  cnt_yes = 0, cnt_no = 0;
  for (int i = 1; i <= n; i++) {
    int v;
    scanf("%d", &v);
    if (v < 0) {
      flag[i][0] = 0, flag[i][1] = v;
      no[v]++, cnt_no++;
    } else {
      flag[i][0] = 1, flag[i][1] = v;
      yes[v]++, cnt_yes++;
    }
  }
  for (int i = 1; i <= n; i++) {
    int cnt = yes[i];
    cnt += cnt_no - no[i];
    if (cnt == k) {
      ans[i] = 1;
      f++;
    }
  }
  if (f == 1) {
    for (int i = 1; i <= n; i++) {
      if ((flag[i][0] && ans[flag[i][1]]) ||
          (!flag[i][0] && !ans[flag[i][1]])) {
        printf("Truth\n");
      } else
        printf("Lie\n");
    }
  } else {
    for (int i = 1; i <= n; i++) {
      if ((flag[i][0] && ans[flag[i][1]]) || (!flag[i][0] && ans[flag[i][1]])) {
        printf("Not defined\n");
      } else if (!flag[i][0] && !ans[flag[i][1]]) {
        printf("Truth\n");
      } else
        printf("Lie\n");
    }
  }
  return 0;
}
