#include <iostream>
using namespace std;
const int MAX_SIZE = 2000;
const int FIRST_LETTER = 'a';
const int LAST_LETTER = 'z';
bool isFrequest(char currentLetter, char frequestLetter, int currentFrequency, int maxFrequency) {
return frequestLetter == 0 || (currentFrequency > maxFrequency || (currentFrequency == maxFrequency && currentLetter > frequestLetter));
}
bool isLowerLetter(char c) {
return 'a' <= c && c <= 'z';
}
void countLowerLetters(char text[], int fr[], char &frequestLetter, int maxFrequency) {
for (int i = 0; text[i]; ++i) {
if (isLowerLetter(text[i])) {
++fr[(int)text[i]];
if (isFrequest(text[i], frequestLetter, fr[(int)text[i]], maxFrequency)) {
frequestLetter = text[i];
maxFrequency = fr[(int)text[i]];
}
}
}
}
bool existPalyndrome(int fr[]) {
int numOfOddFrequencies = 0;
for (int i = FIRST_LETTER; i <= LAST_LETTER; ++i) {
if (fr[i] % 2 == 1) {
++numOfOddFrequencies;
if (numOfOddFrequencies > 1) {
return false;
}
}
}
return true;
}
int main() {
char text[MAX_SIZE + 1], frequestLetter = 0;
int fr[LAST_LETTER + 1] = {0}, maxFrequency = 0;
while (cin.getline(text, MAX_SIZE + 1)) {
countLowerLetters(text, fr, frequestLetter, maxFrequency);
}
if (existPalyndrome(fr)) {
cout << "DA";
} else {
cout << "NU";
}
cout << "\n" << frequestLetter;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY29uc3QgaW50IE1BWF9TSVpFID0gMjAwMDsKY29uc3QgaW50IEZJUlNUX0xFVFRFUiA9ICdhJzsKY29uc3QgaW50IExBU1RfTEVUVEVSID0gJ3onOwoKYm9vbCBpc0ZyZXF1ZXN0KGNoYXIgY3VycmVudExldHRlciwgY2hhciBmcmVxdWVzdExldHRlciwgaW50IGN1cnJlbnRGcmVxdWVuY3ksIGludCBtYXhGcmVxdWVuY3kpIHsKCXJldHVybiBmcmVxdWVzdExldHRlciA9PSAwIHx8IChjdXJyZW50RnJlcXVlbmN5ID4gbWF4RnJlcXVlbmN5IHx8IChjdXJyZW50RnJlcXVlbmN5ID09IG1heEZyZXF1ZW5jeSAmJiBjdXJyZW50TGV0dGVyID4gZnJlcXVlc3RMZXR0ZXIpKTsKfQoKYm9vbCBpc0xvd2VyTGV0dGVyKGNoYXIgYykgewoJcmV0dXJuICdhJyA8PSBjICYmIGMgPD0gJ3onOwp9Cgp2b2lkIGNvdW50TG93ZXJMZXR0ZXJzKGNoYXIgdGV4dFtdLCBpbnQgZnJbXSwgY2hhciAmZnJlcXVlc3RMZXR0ZXIsIGludCBtYXhGcmVxdWVuY3kpIHsKICAgIGZvciAoaW50IGkgPSAwOyB0ZXh0W2ldOyArK2kpIHsKICAgIAlpZiAoaXNMb3dlckxldHRlcih0ZXh0W2ldKSkgewoJICAgICAgICArK2ZyWyhpbnQpdGV4dFtpXV07CgkgICAgICAgIGlmIChpc0ZyZXF1ZXN0KHRleHRbaV0sIGZyZXF1ZXN0TGV0dGVyLCBmclsoaW50KXRleHRbaV1dLCBtYXhGcmVxdWVuY3kpKSB7CgkgICAgICAgICAgICBmcmVxdWVzdExldHRlciA9IHRleHRbaV07CgkgICAgICAgICAgICBtYXhGcmVxdWVuY3kgPSBmclsoaW50KXRleHRbaV1dOwoJICAgICAgICB9CiAgICAJfQogICAgfQp9Cgpib29sIGV4aXN0UGFseW5kcm9tZShpbnQgZnJbXSkgewogICAgaW50IG51bU9mT2RkRnJlcXVlbmNpZXMgPSAwOwogICAgZm9yIChpbnQgaSA9IEZJUlNUX0xFVFRFUjsgaSA8PSBMQVNUX0xFVFRFUjsgKytpKSB7CiAgICAgICAgaWYgKGZyW2ldICUgMiA9PSAxKSB7CiAgICAgICAgICAgICsrbnVtT2ZPZGRGcmVxdWVuY2llczsKICAgICAgICAgICAgaWYgKG51bU9mT2RkRnJlcXVlbmNpZXMgPiAxKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gdHJ1ZTsKfQoKaW50IG1haW4oKSB7CiAgICBjaGFyIHRleHRbTUFYX1NJWkUgKyAxXSwgZnJlcXVlc3RMZXR0ZXIgPSAwOwogICAgaW50IGZyW0xBU1RfTEVUVEVSICsgMV0gPSB7MH0sIG1heEZyZXF1ZW5jeSA9IDA7CiAgICB3aGlsZSAoY2luLmdldGxpbmUodGV4dCwgTUFYX1NJWkUgKyAxKSkgewogICAgICAgIGNvdW50TG93ZXJMZXR0ZXJzKHRleHQsIGZyLCBmcmVxdWVzdExldHRlciwgbWF4RnJlcXVlbmN5KTsKICAgIH0KICAgIGlmIChleGlzdFBhbHluZHJvbWUoZnIpKSB7CiAgICAgICAgY291dCA8PCAiREEiOwogICAgfSBlbHNlIHsKICAgICAgICBjb3V0IDw8ICJOVSI7CiAgICB9CiAgICBjb3V0IDw8ICJcbiIgPDwgZnJlcXVlc3RMZXR0ZXI7CiAgICByZXR1cm4gMDsKfQ==