#include <iostream>
using namespace std;
int main(){
int m;
cin >>m;
int n;
cin >>n;
int k;
cin >>k;
int a[m][n];//上からm 左からnまでにあるJの個数
int b[m][n];//O
int c[m][n];//I
int j;//ある行においてマスまでに何個Jがあるか
int o;
int i;
char d;
int e;
int f;
e=0;
j=0;
o=0;
i=0;
while(e<n){
cin >>d;
if(d=="J"){j=j+1;}
if(d=="O"){o=o+1;}
if(d=="I"){i=i+1;}
a[0][e]=j;
b[0][e]=o;
c[0][e]=i;
e=e+1;}
f=1;
while(f<m){
e=0;
j=0;
o=0;
i=0;
while(e<n){
cin >>d;
if(d=="J"){j=j+1;}
if(d=="O"){o=o+1;}
if(d=="I"){i=i+1;}
a[f][e]=a[f-1][e]+j;
b[f][e]=b[f-1][e]+o;
c[f][e]=c[f-1][e]+i;
e=e+1;}
f=f+1;}
int p;
int q;
int r;
int s;
int t;
int u;
int v;
e=0;
while(e<k){
cin >>p;
cin >>q;
cin >>r;
cin >>s;
t=a[r-1][s-1]-a[r-1][q-2]-a[p-2][s-1]+a[p-2][q-2];
u=b[r-1][s-1]-b[r-1][q-2]-b[p-2][s-1]+b[p-2][q-2];
v=c[r-1][s-1]-c[r-1][q-2]-c[p-2][s-1]+c[p-2][q-2];
cout <<t<<" "<<u<<" "<<v<<endl;
e=e+1;}
}