#include <cstdio>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;

bool lead0(const string &a){
	return a.size() > 1 && a[0] == '0';
}

bool eqcomp(string a, string b, string c, char x){
	replace(a.begin(), a.end(), 'X', x);
	replace(b.begin(), b.end(), 'X', x);
	replace(c.begin(), c.end(), 'X', x);

	if(lead0(a) || lead0(b) || lead0(c)){
		return false;
	}

	size_t len = max(a.size(), b.size());
	string t(len + 1, '0');
	for(size_t i = 0; i < len; ++i){
		if(i < a.size()){
			t[i] += a[a.size() - 1 - i] - '0';
		}
		if(i < b.size()){
			t[i] += b[b.size() - 1 - i] - '0';
		}
		if(t[i] > '9'){
			t[i] -= 10;
			++t[i + 1];
		}
	}

	if(*t.rbegin() == '0'){
		t.erase(t.end() - 1);
	}
	reverse(t.begin(), t.end());
	return t == c;
}

int main(){
	char bufa[128] = "", bufb[128] = "", bufc[128] = "";
	string a, b, c;
	while(scanf(" %[^+]+%[^=]=%s", bufa, bufb, bufc) == 3){
		a = bufa;
		b = bufb;
		c = bufc;

		char ans;
		for(ans = '0'; ans <= '9' && !eqcomp(a, b, c, ans); ++ans);
		printf(ans > '9' ? "NA\n" : "%c\n", ans);
	}
}