#include <cstdlib>
#include <iostream>
#include <cstring>
#define MAX 300004
using namespace std;

int n, m, c, arr[MAX];

int d[12][MAX];

void pre(){
	for(int i = 0; i < c; ++i){
		int tot=0;
		for(int j = 0; j < n; ++j){
			d[i][j] = (tot += (arr[j] == i+1) );
		}
	}
}

void query(){
	int a, b;
	scanf("%d%d", &a,&b);
	--a, --b;
	for(int i = 0; i < c; ++i){
		if(  d[i][b] - (a?d[i][a-1]:0) > (b-a+1)/2 ) { printf("da %d\n", i+1); return; }
	}
	printf("ne\n");
}

void input(){
	scanf("%d%d",&n,&c);
	for(int i = 0; i < n; ++i){
		scanf("%d", &arr[i]);
	}
}

void solve_smallc(){
	
	pre();
	scanf("%d", &m);
	for(int i = 0; i < m; ++i){
		
		query();
		
	}
}

void solve_smallm(){
	scanf("%d", &m);
	for(int i = 0; i < m; ++i){
		int a, b;
		scanf("%d%d", &a, &b); --a; --b;
		static int cnt[10005]; 
		memset(cnt,0, sizeof(cnt));
		bool ok = false;
		for(int j = a; j <= b; ++j){
			cnt[arr[j]]++;
			if(cnt[arr[j]] > (b-a+1)/2 ) { printf("da %d\n", arr[j]); ok = true; }
		}
		if(!ok) printf("ne\n");
		
	}
}

int main(){
	input();
	if(c <= 11) solve_smallc();
	else solve_smallm();
	scanf("\n");
	return 0;
}
