#include <iostream>
#include <string>

using namespace std;

string clac(string a, string b){
  string tmp;
  int n3=0;
  int size1, size2;
  size1=a.size();
  size2=b.size();

  if(a.size()>b.size()){
    for(int i=0;i<size1;i++){
      int n1, n2;
      if(i>=size2){
	n2=0;
      }else{
	n2=b[size2-1-i]-'0';
      }
      n1=a[size1-1-i]-'0';
      int t=n1+n2+n3;
      n3=t/10;
      t-=n3*10;
      tmp+=t+'0';
    }
  }else if(a.size()<b.size()){
    for(int i=0;i<size2;i++){
      int n1, n2;
      if(i>=size1){
	n1=0;
      }else{
	n1=a[size1-1-i]-'0';
      }
      n2=b[size2-1-i]-'0';
      int t=n1+n2+n3;
      n3=t/10;
      t-=n3*10;
      tmp+=t+'0';
    }
  }else{
    for(int i=0;i<size1;i++){
      int n1, n2;
      n1=a[size1-1-i]-'0';
      n2=b[size1-1-i]-'0';
      int t=n1+n2+n3;
      n3=t/10;
      t-=n3*10;
      tmp+=t+'0';
    }
  }
  if(n3!=0){
    tmp+=n3+'0';
  }
  string ans="";
  for(int i=0;i<tmp.size();i++){
    ans+=tmp[tmp.size()-1-i];
  }
  return ans;
}

main(){
  string in;
  while(cin >> in){
    string a, b, c;
    int size=in.size();
    int i;
    bool f=false;
    for(int num=0;num<10;num++){
      a=b=c="";
      for(i=0;i<size;i++){
	if(in[i]=='+'){
	  i++;
	  break;
	}
	if(in[i]=='X'){
	  a+=(char)num+'0';
	}else{
	  a+=in[i];
	}
      }
      for(;i<size;i++){
	if(in[i]=='='){
	  i++;
	  break;
	}
	if(in[i]=='X'){
	  b+=(char)num+'0';
	}else{
	  b+=in[i];
	}
      }
      for(;i<size;i++){
	if(in[i]=='X'){
	  c+=(char)num+'0';
	}else{
	  c+=in[i];
	}
      }
      string left=clac(a, b);
      string ans1="", ans2="";
      bool first=true;
      for(int i=0;i<left.size();i++){
	if(left[i]=='0' && first) continue;
	ans1+=left[i];
      }
      first=true;
      for(int i=0;i<c.size();i++){
	if(c[i]=='0' && first) continue;
	ans2+=c[i];
      }
      if(ans1==ans2){
	cout << num << endl;
	f=true;
	break;
      }
    }
    if(!f) cout << "NA" << endl;
  }
  return 0;
}