#include<iostream>
#include<cstdio>
#include<vector>
#include<cstring>
#include<algorithm>
using namespace std;
char m[6][6];
char bei[6][6];
vector<int> v;
int getx(int u){
return u/4;
}
int gety(int u){
return u%4;
}
void fan(int x,int y){
for(int i=0;i<4;i++){
if(m[x][i]=='-') m[x][i]='+';
else m[x][i]='-';
}
for(int i=0;i<4;i++){
if(m[i][y]=='-') m[i][y]='+';
else m[i][y]='-';
}
m[x][y]=='-'?m[x][y]='+':m[x][y]='-';
}
bool check(){
for(int i=0;i<4;i++){
for(int j=0;j<4;j++){
if(m[i][j]=='+') return false;
}
}
return true;
}
int main(){
for(int i=0;i<4;i++){
scanf("%s",m[i]);
}
memcpy(bei,m,sizeof m);
for(int i=0;i<(1<<16);i++){
v.clear();
for(int j=0;j<16;j++){
if((i>>j)&1){
v.push_back(j);
fan(getx(j),gety(j));
}
}
if(check()){
printf("%d\n",v.size());
for(int i=0;i<v.size();i++){
printf("%d %d\n",getx(v[i])+1,gety(v[i])+1);
}
break;
}
memcpy(m,bei,sizeof bei);
}
return 0;
}