#include<iostream>
using namespace std;
bool f(string a){
int c=a.find('@'),e=a.find(' ');
if(c<1||e!=-1){
return 0;
}else{
int d=a.find('@',c+1);
if(d!=-1){
return 0;
}
}
int h;
int b=0,j=0;
h=a.find('.');
if(h==-1){
return 0;
}
while(b!=-1&&j!=3){
b=a.find('.',b+1);
if(b==-1){
break;
}
h=a.find('.',b+1);
if(h==-1){
for(int i=b+1;i<a.size();i++){
if((a[i]-'0')>=0&&(a[i]-'0')<=9){
return 0;
}
}
}
if((b+1)>=a.size()||c>b||a[b-1]=='@'||a[b+1]=='.'){
return 0;
}
j++;
}
if(j==3){
b=a.find('.',b+1);
if(b!=-1){
return 0;
}
}
return 1;
}
int main(){
string a;
getline(cin,a);
if(f(a)){
cout<<"有效";
}else{
cout<<"无效";
}
}