#include<iostream>
#include<string>
#include<cstring>
 
#define rep(i,n) for(int i = 0; i < n; i++)
 
using namespace std;
 
string add(char a[], char b[])
{
  string ans, stt;
  int alen = strlen(a);
  int blen = strlen(b);
  int carry = 0;
  int an, bn;
 
  for(int i = alen-1,j = blen-1; i >= 0 || j >= 0 ; i--,j--){
    an = bn = 0;
    if(i >= 0){ an = a[i]-'0'; }
    if(j >= 0){ bn = b[j]-'0'; }
    int temp = an+bn;
    ans  += ((temp+carry)%10)+'0';
    carry = (temp+carry)/10;
  }
  if(carry)
    ans += carry+'0';
  for(int i = ans.size()-1; i >= 0; --i){
    stt+=ans[i];
  }
  return stt;
}
 
int main(void)
{
 
  string str;
  char  k1[100],  k2[100],  ans[100];
  char tk1[100], tk2[100], tans[100];
  int count, cn;
 
  while(cin >> str){
    int n = count = cn = 0;
    while(str[n] != '\0'){
      if(str[n]=='+' || str[n] == '='){
        if(count == 0){ k1[cn] = '\0'; }
        if(count == 1){ k2[cn] = '\0'; }
        count++;
        cn=0;
      }
      else{
        if(count == 0){  k1[cn] = str[n]; }
        if(count == 1){  k2[cn] = str[n]; }
        if(count == 2){ ans[cn] = str[n]; }
        cn++;
      }
      n++;
    }
    ans[cn] = '\0';
    int num;
    bool flag = false;
    int klen1 = (int)strlen(k1);
    int klen2 = (int)strlen(k2);
    int anslen = (int)strlen(ans);
    rep(i,10){
      strcpy(tk1, k1);
      strcpy(tk2, k2);
      strcpy(tans, ans);
      for(int j = 0;
          j < klen1 ||
            j < klen2 ||
            j < anslen; 
          j++){
        if(j < klen1){
          if( tk1[j]=='X') { tk1[j] = i+'0'; }
        }
        if(j < klen2){
          if( tk2[j]=='X') { tk2[j] = i+'0'; }
        }
        if(j < anslen){
          if(tans[j]=='X'){ tans[j] = i+'0'; }
        }
      }
      string ck = add(tk1,tk2);
      string ck_= string(tans);
      if(ck == ck_){
        num = i;
        flag = true;
        break;
      }
    }
    if(flag){ cout << num << endl;  }
    else    { cout << "NA" << endl; }
  }
 
  return 0;
}