#include <iostream>
#include <iomanip>
#include <algorithm>
#include <vector>
#include <stack>
#include <queue>
#include <map>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>

using namespace std;

string addString(string num1, string num2) {
	string ret, a = num1, b = num2;
	reverse(a.begin(), a.end());
	reverse(b.begin(), b.end());
	if (a.size() < b.size())
		swap(a, b);
	int carry = 0;
	for (int i = 0; i < a.size(); i++) {
		int aa = a[i] - '0';
		if (i < b.size()) {
			int bb = b[i] - '0';
			aa += bb;
		}
		aa += carry;
		if (aa >= 10) {
			aa -= 10;
			carry = 1;
		} else {
			carry = 0;
		}
		ret += aa + '0';
	}
	if (carry == 1)
		ret += '1';
	reverse(ret.begin(), ret.end());
	return ret;
}

string replaceX(string str, int num) {
	string ret = str;
	for (int i = 0; i < ret.size(); i++)
		if (ret[i] == 'X')
			ret[i] = num + '0';
	return ret;
}

bool solve(string str) {
	string num1, num2, ans;
	int i = 0;
	while (str[i] != '+')
		num1 += str[i++];
	i++;
	while (str[i] != '=')
		num2 += str[i++];
	i++;
	while (i < str.size())
		ans += str[i++];
//	cout << num1 << " " << num2 << " " << ans << endl;
	for (i = 0; i <= 9; i++) {
		string rep1 = replaceX(num1, i);
		string rep2 = replaceX(num2, i);
		string repans = replaceX(ans, i);
		string sum = addString(rep1, rep2);
//		cout << "rep1 = " << rep1  << ",rep2 = " << rep2  << ",sum = " << sum << endl;
		if (sum == repans) {
			cout << i << endl;
			return true;
		}
	}
	return false;
}

int main() {
	string str;
	while (cin >> str) {
		if (!solve(str))
			cout << "NA" << endl;
	}
	return 0;
}