#include <iostream>
#include <cmath>
#include <cstring>
const int N = 1e7 + 5;
int t;
int a ,b ,c ,d;
bool isprime[N];
int prime[N];
int cnt = 0;
int count(int x ,int a) {
int sum = 0;
int x1 = x;
while(x1) {
sum += x1;
x1 /= a;
}
return sum;
}
void oula(int n) {
memset(isprime ,1 ,sizeof isprime);
isprime[1] = 0;
for(int i = 2; i <= n; i ++) {
if(isprime[i]) prime[++ cnt] = i;
for(int j = 1; j <= cnt and i * prime[j] <= n; j ++) {
isprime[i * prime[j]] = 0;
if(i % prime[j] == 0) break;
}
}
}
int main() {
std::cin >> t;
while(t --) {
memset(isprime ,0 ,sizeof isprime);
memset(prime ,0 ,sizeof prime);
cnt = 0;
bool flag = 1;
std::cin >> a >> b >> c >> d;
oula(std::max(b ,d));
for(int i = 1; i <= cnt and prime[i] <= d; i ++) {
int a_b = count(b ,prime[i]) - count(a ,prime[i]);
int c_d = count(d ,prime[i]) - count(c ,prime[i]);
if(a_b > c_d) {
std::cout << "NE" << '\n';
flag = 0;
break;
}
}
if(!flag) continue;
else {
std::cout << "DA" << '\n';
}
}
return 0;
}
求调