#include <bits/stdc++.h>
using namespace std;
int dy[] = {0, 0, 1, -1, 1, 1, -1, -1};
int dx[] = {1, -1, 0, 0, 1, -1, -1, 1};
int n, m, k;
char s[2000][2000];
int c[2000][2000][3];
int main() {
  scanf("%d%d%d", &m, &n, &k);
  for (int i = 0; i < (m); i++) scanf("%s", s + i);
  for (int i = 0; i < (m); i++)
    for (int j = 0; j < (n); j++) {
      if (s[i][j] == 'J')
        s[i][j] = 0;
      else if (s[i][j] == 'O')
        s[i][j] = 1;
      else
        s[i][j] = 2;
    }
  for (int i = 0; i < (m); i++)
    for (int j = 0; j < (n); j++)
      for (int k = 0; k < (3); k++) c[i][j][k] = 0;
  c[0][0][s[0][0]]++;
  for (int i = (1); i < (n); i++) {
    for (int j = 0; j < (3); j++) c[0][i][j] = c[0][i - 1][j];
    c[0][i][s[0][i]]++;
  }
  for (int i = (1); i < (m); i++) {
    for (int j = 0; j < (3); j++) c[i][0][j] = c[i - 1][0][j];
    c[i][0][s[i][0]]++;
  }
  for (int i = (1); i < (m); i++) {
    for (int j = (1); j < (n); j++) {
      for (int k = 0; k < (3); k++) {
        c[i][j][k] += c[i - 1][j][k] + c[i][j - 1][k] - c[i - 1][j - 1][k];
      }
      c[i][j][s[i][j]]++;
    }
  }
  for (int i = 0; i < (k); i++) {
    int x, y, w, z;
    scanf("%d%d%d%d", &x, &y, &w, &z);
    x--;
    y--;
    w--;
    z--;
    for (int j = 0; j < (3); j++) {
      int ans = c[w][z][j];
      if (x > 0 && y > 0) ans += c[x - 1][y - 1][j];
      if (x > 0) ans -= c[x - 1][z][j];
      if (y > 0) ans -= c[w][y - 1][j];
      printf("%d ", ans);
    }
    printf("\n");
  }
  return 0;
}
