// Source: https://usaco.guide/general/io
#include <bits/stdc++.h>
#include <sys/types.h>
using namespace std;
#define int long long
const int N=3*1e5, M=21;
int pre1[N], pre2[N];
//int arr[N];
int dp2[2];
int dp[N];
//int cnt[N],p[N];
const int mod=1e9+7;
int k,max2,m;
vector<int> nums[N];
int vis[N];
int sum=1,ans=0;;
string s,s1;
set<int> st;
bool check=true;
vector<int> nums2;
int O[N],I[N];
signed main(){
int n,t,n1,q,m;
//int c,d,x1,y1,l,r,sum,g,i,k,k1,g1,g2,e,b,u,v,a;
t=1; //cin>>t;
while (t>0){
t--;
cin>>n>>m;
string arr[n+5];
for (int i=0; i<n; i++){
cin>>arr[i];
}
for (int i=0; i<n; i++){
for (int j=0; j<m; j++){
if (arr[i][j]=='O') O[i]++;
}
}
for (int i=0; i<n; i++){
for (int j=0; j<m; j++){
if (arr[i][j]=='I') I[j]++;
}
}
ans=0;
for (int i=0; i<n; i++){
for (int j=0; j<m; j++){
if (arr[i][j]=='J'){
ans=ans+I[i]*O[j];
}
}
}
cout<<ans;
}
}