// takmicenje.cpp : This file contains the 'main' function. Program execution begins and ends there.
//

#include <iostream>
#include<vector>
#include<algorithm>
#define pii pair<int,int>
#define MAXN (int)2e5+5
using namespace std;
int a[MAXN];
void solve() {
	int t,n,k; cin>>t>>n>>k;
	for (int i = 1; i <= n; i++) {
		cin >> a[i];
	}sort(a+1, a + n+1);
	if ((n + k) % 2) { cout << "NE\n"; return; }
	int l = 1, r = n - (n + k) / 2+1;
	int z = 0;
	vector<int>v;
	while (r <= n) {

		while (a[r]<z&&l <= n - (n + k) / 2) {
			if (a[l] >= z) {
				cout << "NE\n"; return;
			}
			z--; l++;
			v.push_back(a[l-1]);
		}
		if (a[r] < z) {
			cout << "NE\n"; return;
		}
		z++; r++;
		v.push_back(a[r - 1]);
	}
	while (l <= n - (n + k) / 2) {
		if (a[l] >= z) {
			cout << "NE\n"; return;
		}
		z--;
		l++;
		v.push_back(a[l - 1]);
	}
	cout << "DA\n";
	if (t) {
		for (int& x : v) {
			cout << x << ' ';
		}
	}

}
int32_t main()
{
	ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
	int32_t T = 1;// cin >> T;
	while (T--) {
		solve();
	}
	return 0;
}