#include <stdio.h>
#include <iostream>
#include <vector>
#include <string>
#include <math.h>
#include <algorithm>
#include <boost/multiprecision/cpp_int.hpp>
using namespace std;
namespace mp = boost::multiprecision;
#define INF 0x7FFFFFFF

//オーバーフロー


int main(){
  string s;
  cin >> s;
  int f=0;
  while((s[0]>='0'&&s[0]<='9')||s[0]=='X'){
    f=0;
    for(int i=0;i<10;i++){
      mp::cpp_int a,b,c;
      a=0;
      b=0;
      c=0;
      int g=0;
      int t;
      for(t=0;t<s.size()&&s[t]!='+';t++){
        if(a==0&&s[t]=='X'&&i==0) g|=1;
        a*=10;
        if(s[t]!='X'){
          a+=s[t]-'0';
        }
        else{
          a+=i;
        }
      }
      for(t++;t<s.size()&&s[t]!='=';t++){
        if(b==0&&s[t]=='X'&&i==0) g|=2;
        b*=10;
        if(s[t]!='X'){
          b+=s[t]-'0';
        }
        else{
          b+=i;
        }
      }
      for(t++;t<s.size();t++){
        if(c==0&&s[t]=='X'&&i==0) g|=4;
        c*=10;
        if(s[t]!='X'){
          c+=s[t]-'0';
        }
        else{
          c+=i;
        }
      }
      if(a==0) g&=0b110;
      if(b==0) g&=0b101;
      if(c==0) g&=0b011;
      if(c==a+b&&g<=0){
        f++;
        cout << i << endl;
        break;
      }
    }
    if(f==0){
      cout << "NA" << endl;
    }
    s="";
    cin >> s;
  }
}

