#include<bits/stdc++.h>
using namespace std;
const int N=1100;
int n,m;
char a[N][N];
int pos[N][N],ans;
int stk[N],top;
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cin>>a[i][j];
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
if(a[i][j]=='F')
{
pos[i][j]=pos[i-1][j]+1;
}
else
{
pos[i][j]=0;
}
}
}
for(int i=1;i<=n;i++)
{
int ant=0;
top=0;
memset(stk,0,sizeof stk);
for(int j=m;j>=1;j--)
{
while(top&&pos[i][stk[top]]>=pos[i][j])
{
top--;
}
if(top==0)
{
ant=max(ant,(m-j+1)*pos[i][j]);
}
else
{
ant=max(ant,(stk[top]-j)*pos[i][j]);
}
stk[++top]=j;
}
ans=max(ans,ant);
}
cout<<3*ans;
return 0;
}