#include "bits/stdc++.h"
using namespace std;
#define ff first
#define ss second
#define ll long long
const int N = 505;
char a[N][N];
int mp[N][N], n, w, h;
vector <vector <int>> v;
pair <int, int> f(int i, int j, int x1, int y1) {
while(a[i + x1][j + y1] != 'x' and i + x1 <= h and i + x1 > 0 and j + y1 <= w and j + y1 > 0) {
i += x1, j += y1;
if(a[i][j] == 'C') {
if(x1 == -1 and y1 == 0) x1 = 0, y1 = 1;
else if(x1 == 0 and y1 == 1) x1 = 1, y1 = 0;
else if(x1 == 1 and y1 == 0) x1 = 0, y1 = -1;
else if(x1 == 0 and y1 == -1) x1 = -1, y1 = 0;
}
if(a[i][j] == 'A') {
if(x1 == -1 and y1 == 0) x1 = 0, y1 = -1;
else if(x1 == 0 and y1 == 1) x1 = -1, y1 = 0;
else if(x1 == 1 and y1 == 0) x1 = 0, y1 = 1;
else if(x1 == 0 and y1 == -1) x1 = 1, y1 = 0;
}
}
return {i, j};
}
int main() {
ios_base::sync_with_stdio(false); cin.tie(nullptr);
cin >> n >> w >> h;
int nd = 0;
for(int i = 1; i <= h; i++) {
for(int j = 1; j <= w; j++) {
cin >> a[i][j];
mp[i][j] = ++nd;
}
}
v.resize(nd+1);
for(int i = 1; i <= h; i++) {
for(int j = 1; j <= w; j++) {
pair <int, int> ind = f(i, j, -1, 0);
if(ind != pair <int, int> {i, j}) v[mp[i][j]].push_back(mp[ind.ff][ind.ss]);
ind = f(i, j, 0, 1);
if(ind != pair <int, int> {i, j}) v[mp[i][j]].push_back(mp[ind.ff][ind.ss]);
ind = f(i, j, 1, 0);
if(ind != pair <int, int> {i, j}) v[mp[i][j]].push_back(mp[ind.ff][ind.ss]);
ind = f(i, j, 0, -1);
if(ind != pair <int, int> {i, j}) v[mp[i][j]].push_back(mp[ind.ff][ind.ss]);
}
}
for(int i = 1; i <= h; i++) {
for(int j = 1; j <= w; j++) {
cout << i << ' ' << j << "\n";
for(auto k : v[mp[i][j]]) {
cout << k << ' ';
}
cout << '\n';
}
}
return 0;
}
I2luY2x1ZGUgImJpdHMvc3RkYysrLmgiCgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKI2RlZmluZSBmZiBmaXJzdAojZGVmaW5lIHNzIHNlY29uZAojZGVmaW5lIGxsIGxvbmcgbG9uZwoKY29uc3QgaW50IE4gPSA1MDU7CgpjaGFyIGFbTl1bTl07CgppbnQgbXBbTl1bTl0sIG4sIHcsIGg7Cgp2ZWN0b3IgPHZlY3RvciA8aW50Pj4gdjsKCnBhaXIgPGludCwgaW50PiBmKGludCBpLCBpbnQgaiwgaW50IHgxLCBpbnQgeTEpIHsKICAgIHdoaWxlKGFbaSArIHgxXVtqICsgeTFdICE9ICd4JyBhbmQgaSArIHgxIDw9IGggYW5kIGkgKyB4MSA+IDAgYW5kIGogKyB5MSA8PSB3IGFuZCBqICsgeTEgPiAwKSB7CiAgICAgICAgaSArPSB4MSwgaiArPSB5MTsKICAgICAgICBpZihhW2ldW2pdID09ICdDJykgewogICAgICAgIAlpZih4MSA9PSAtMSBhbmQgeTEgPT0gMCkgeDEgPSAwLCB5MSA9IDE7CiAgICAgICAgCWVsc2UgaWYoeDEgPT0gMCBhbmQgeTEgPT0gMSkgeDEgPSAxLCB5MSA9IDA7CiAgICAgICAgCWVsc2UgaWYoeDEgPT0gMSBhbmQgeTEgPT0gMCkgeDEgPSAwLCB5MSA9IC0xOwogICAgICAgIAllbHNlIGlmKHgxID09IDAgYW5kIHkxID09IC0xKSB4MSA9IC0xLCB5MSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmKGFbaV1bal0gPT0gJ0EnKSB7CiAgICAgICAgCWlmKHgxID09IC0xIGFuZCB5MSA9PSAwKSB4MSA9IDAsIHkxID0gLTE7CiAgICAgICAgCWVsc2UgaWYoeDEgPT0gMCBhbmQgeTEgPT0gMSkgeDEgPSAtMSwgeTEgPSAwOwogICAgICAgIAllbHNlIGlmKHgxID09IDEgYW5kIHkxID09IDApIHgxID0gMCwgeTEgPSAxOwogICAgICAgIAllbHNlIGlmKHgxID09IDAgYW5kIHkxID09IC0xKSB4MSA9IDEsIHkxID0gMDsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4ge2ksIGp9Owp9CgppbnQgbWFpbigpIHsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyBjaW4udGllKG51bGxwdHIpOwoKICAgIGNpbiA+PiBuID4+IHcgPj4gaDsKCiAgICBpbnQgbmQgPSAwOwogICAgZm9yKGludCBpID0gMTsgaSA8PSBoOyBpKyspIHsKICAgICAgICBmb3IoaW50IGogPSAxOyBqIDw9IHc7IGorKykgewogICAgICAgICAgICBjaW4gPj4gYVtpXVtqXTsKICAgICAgICAgICAgbXBbaV1bal0gPSArK25kOwogICAgICAgIH0KICAgIH0KCiAgICB2LnJlc2l6ZShuZCsxKTsKICAgIGZvcihpbnQgaSA9IDE7IGkgPD0gaDsgaSsrKSB7CiAgICAgICAgZm9yKGludCBqID0gMTsgaiA8PSB3OyBqKyspIHsKICAgICAgICAgICAgcGFpciA8aW50LCBpbnQ+IGluZCA9IGYoaSwgaiwgLTEsIDApOwogICAgICAgICAgICBpZihpbmQgIT0gcGFpciA8aW50LCBpbnQ+IHtpLCBqfSkgdlttcFtpXVtqXV0ucHVzaF9iYWNrKG1wW2luZC5mZl1baW5kLnNzXSk7CiAgICAgICAgICAgIGluZCA9IGYoaSwgaiwgMCwgMSk7CiAgICAgICAgICAgIGlmKGluZCAhPSBwYWlyIDxpbnQsIGludD4ge2ksIGp9KSB2W21wW2ldW2pdXS5wdXNoX2JhY2sobXBbaW5kLmZmXVtpbmQuc3NdKTsKICAgICAgICAgICAgaW5kID0gZihpLCBqLCAxLCAwKTsKICAgICAgICAgICAgaWYoaW5kICE9IHBhaXIgPGludCwgaW50PiB7aSwgan0pIHZbbXBbaV1bal1dLnB1c2hfYmFjayhtcFtpbmQuZmZdW2luZC5zc10pOwogICAgICAgICAgICBpbmQgPSBmKGksIGosIDAsIC0xKTsKICAgICAgICAgICAgaWYoaW5kICE9IHBhaXIgPGludCwgaW50PiB7aSwgan0pIHZbbXBbaV1bal1dLnB1c2hfYmFjayhtcFtpbmQuZmZdW2luZC5zc10pOwogICAgICAgIH0KICAgIH0KCiAgICBmb3IoaW50IGkgPSAxOyBpIDw9IGg7IGkrKykgewogICAgICAgIGZvcihpbnQgaiA9IDE7IGogPD0gdzsgaisrKSB7CiAgICAgICAgICAgIGNvdXQgPDwgaSA8PCAnICcgPDwgaiA8PCAiXG4iOwogICAgICAgICAgICBmb3IoYXV0byBrIDogdlttcFtpXVtqXV0pIHsKICAgICAgICAgICAgICAgIGNvdXQgPDwgayA8PCAnICc7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY291dCA8PCAnXG4nOwogICAgICAgIH0KICAgIH0KCiAgICByZXR1cm4gMDsKfQ==