#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<cstring>
#include<queue>
#include<iostream>
#include<algorithm>
using namespace std;
char cc;
int r,c,sum;
int dx[4]={1,0,-1,0};
int dy[4]={0,1,0,-1};
bool a[201][201],mark[201][201],flag;
struct node
{
int X;
int Y;
}ans[100001];
void dfs(int k,int x,int y)
{
if (flag==1) {return;}
if (x==r&&y==c&&flag==0)
{
for (int i=1;i<k;i++)
{
flag=1;
cout<<ans[i].X<<" "<<ans[i].Y<<endl;
}
cout<<r<<" "<<c;
}
else
{
for (int i=0;i<4;i++)
{
if (a[x][y]&&(!mark[x][y]))
{
ans[k].X=x;
ans[k].Y=y;
mark[x][y]=1;
dfs(k+1,x+dx[i],y+dy[i]);
mark[x][y]=0;
}
}
}
}
int main()
{
cin>>r>>c;
for (int i=1;i<=r;i++)
for (int j=1;j<=c;j++)
{
cin>>cc;
if (cc=='.') {a[i][j]=1;}
if (cc=='*') {a[i][j]=0;}
}
dfs(1,1,1);
return 0;
}