#include #include #include #include using namespace std; int t,n; int a[10]; bool mark[10]; inline int mid(int a,int b){ if(a>b)swap(a,b); if(a==1&&b==3)return 2; if(a==1&&b==7)return 4; if(a==1&&b==9)return 5; if(a==2&&b==8)return 5; if(a==3&&b==7)return 5; if(a==3&&b==9)return 6; if(a==4&&b==6)return 5; if(a==7&&b==9)return 8; return -1; } int main(){ scanf("%d",&t); while(t--){ bool haha=0; memset(a,0,sizeof(a)); memset(mark,0,sizeof(mark)); scanf("%d",&n); for(int i=1;i<=n;i++){ scanf("%d",&a[i]); if(a[i]==0||a[i]>9)haha=1; } mark[a[1]]=1; if(n<4)haha=1; for(int i=2;i<=n;i++){ if(mark[a[i]]==1)haha=1; mark[a[i]]=1; if(mid(a[i],a[i-1])==-1)continue; if(mark[mid(a[i],a[i-1])]==0){ haha=1; break; } } if(haha==0)printf("valid\n"); else printf("invalid\n"); } return 0; }