#include <iostream>
#include <string>
#include <map>
using namespace std;

int main(){
  int h,w;
  string s[10],t;
  map<string,int> v;
  while(1){
    cin>>h>>w;
    if(!h&&!w) break;
    for(int i=0;i<h;i++) cin>>s[i];
    for(int i=0;i<h;i++){
      for(int j=0;j<w;j++){
	for(int k=-1;k<=1;k++){
	  for(int l=-1;l<=1;l++){
	    if(!k&&!l) continue;
	    int y=i,x=j;
	    t="";
	    t+=s[y][x];
	    while(1){
	      y+=k;
	      x+=l;
	      if(y<0) y+=h;
	      if(x<0) x+=w;
	      if(h<=y) y-=h;
	      if(w<=x) x-=w;
	      if(y==i&&x==j) break;
	      t+=s[y][x];
	      if(v.find(t)!=v.end()) v[t]++;
	      else v.insert(make_pair(t,0));
	    }
	  }
	}
      }
    }
    int ans=0;
    for(map<string,int>::iterator it=v.begin();it!=v.end();it++){
      string z=it->first;
      if(it->second>0&&ans<z.size()) ans=z.size();
    }
    if(ans>=2){
      for(map<string,int>::iterator it=v.begin();it!=v.end();it++)
	if(it->second>0&&ans==it->first.size()){
	  cout<<it->first<<endl;
	  break;
	}
    }else cout<<0<<endl;
    v.clear();
  }
  return 0;
}