#include <bits/stdc++.h>
#define rep(i,l,n) for(int i=l;i<n;i++)
#define rer(i,l,n) for(int i=l;i<=n;i++)
#define all(a) a.begin(),a.end()
#define o(a) cout<<a<<endl
#define pb(a) push_back(a)
#define mk(a,b) make_pair(a,b)
#define fi first
#define se second
using namespace std;
typedef long long ll;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef pair<int,int> pii;

string s;
int dy[4]={1,-1,0,0},dx[4]={0,0,1,-1};
bool f;

void dfs(int k,int y,int x){
	if(k==s.size()-1 || f){
		f=1; return;
	}
	rep(i,0,4){
		//int ny=(s[k]-'A')/3;
		//int nx=(s[k]-'A')%3;
		int ny=y+dy[i],nx=x+dx[i];
		if(ny<3 && ny>=0 && nx<3 && nx>=0){
			if('A'+ny*3+nx==s[k+1]){
				dfs(k+1,ny,nx);
			}
		}
	}

}

int main(){
	rep(i,0,1000){
		cin>>s;
		f=0;
		dfs(0,(s[0]-'A')/3,(s[0]-'A')%3);
		if(f) o(s);
	}
}