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

string add(string a,string b){
  int numa[200] = {0},numb[200] = {0};
  for(int i = a.size()-1 ; i >= 0 ; i-- )numa[a.size()-i-1] = a[i]-'0';
  for(int i = b.size()-1 ; i >= 0 ; i-- )numb[b.size()-i-1] = b[i]-'0';

  vector<int> renum(201);
  fill(renum.begin(),renum.end(),0);
  int mxsize = max(a.size(),b.size());

  for(int i = 0 ; i < mxsize ; i++ ){
    renum[i+1] += (renum[i] + numa[i] + numb[i])/10;
    renum[i] = (renum[i] + numa[i] + numb[i])%10;
  }

  string srenum = "";
  for(int i = mxsize ; i >= 0 ; i-- ){
    if(i == mxsize && renum[i] == 0)continue;
    srenum += renum[i]+'0';
  }
  return srenum;
}

bool cheak(string str){
  str += '#';
  int spos = 0;
  string num[3];
  int p = 0;
  for(int i = 0 ; spos < str.size() ; i++ ){
    if(str[i+1] < '0' || '9' < str[i+1] ){
      num[p++] = str.substr(spos,i+1-spos);
      spos = i+2;
    }
  }
  return add(num[0],num[1]) == num[2];
}

int main(){
  string str;
  while(  cin >> str ){
    int f = 1;
    for(int i = 0 ; i < 10 ; i++ ){
      string tmp = str;
      for(int j = 0 ; j < tmp.size() ; j++ ){
	if(tmp[j] == 'X')tmp[j] = (i + '0');
      }
      if(cheak(tmp)){
	cout << i;
	f = 0;
	break;
      }
    }
    if(f)cout << "NA";
    cout << endl;
  }
  return 0;
}