#include <bits/stdc++.h>
using namespace std;
ifstream f("zone.in");
ofstream g("zone.out");
const int NMAX = 600;
const int SMAX = 10;
long long n,mat[NMAX][NMAX],sum[SMAX], mats[NMAX][NMAX], used[SMAX];
vector < pair < int, int > > v;
string s;
inline bool available(long long s){
for(int i = 1 ; i <= 9 ; i++)
if(sum[i] == s && !used[i]){
used[i] = 1;
return 1;
}
return 0;
}
inline int SUM(const int &is, const int &js, const int &ij, const int &jj){
return available(mats[ij][jj] - mats[is-1][jj] - mats[ij][js-1] + mats[is-1][js-1]);
}
long long made(int lo, int hi){
long long x = 0;
for(int i = lo ; i <= hi ; i++)
x = x * 10 + s[i] - '0';
return x;
}
int main(){
int i,j,lo,k;
int ij,jj,is,js;
getline(f,s);
i = 0;
while(s[i] >= '0' && s[i] <= '9')
i++;
n = made(0, i - 1);
getline(f,s);
j = 0;
for(i = 0 ; i < s.size() ; i++)
if(s[i] >= '0' && s[i] <= '9'){
lo = i;
i++;
while(s[i] >= '0' && s[i] <= '9')
i++;
sum[++j] = made(lo, i - 1);
}
for(k = 1 ; k <= n ; k++){
getline(f,s);
j = 0;
for(i = 0 ; i < s.size() ; i++)
if(s[i] >= '0' && s[i] <= '9'){
lo = i;
i++;
while(s[i] >= '0' && s[i] <= '9')
i++;
mat[k][++j] = made(lo, i - 1);
mats[k][j] = mats[k - 1][j] + mats[k][j - 1] - mats[k - 1][j - 1] + mat[k][j];
}
}
for(i = 1 ; i < n ; i++)
for(j = i + 1 ; j < n ; j++)
v.push_back(make_pair(i,j));
for(auto it: v)
for(auto its: v){
memset(used, 0, sizeof(used));
///1
is = js = 1;
ij = it.first;
jj = its.first;
if(!SUM(is,js,ij,jj))
continue;
///2
is = 1;
js = its.first + 1;
ij = it.first;
jj = its.second;
if(!SUM(is,js,ij,jj))
continue;
///3
is = 1;
js = its.second + 1;
ij = it.first;
jj = n;
if(!SUM(is,js,ij,jj))
continue;
///4
is = it.first + 1;
js = 1;
ij = it.second;
jj = its.first;
if(!SUM(is,js,ij,jj))
continue;
///5
is = it.first + 1;
js = its.first + 1;
ij = it.second;
jj = its.second;
if(!SUM(is,js,ij,jj))
continue;
///6
is = it.first + 1;
js = its.second + 1;
ij = it.second;
jj = n;
if(!SUM(is,js,ij,jj))
continue;
///7
is = it.second + 1;
js = 1;
ij = n;
jj = its.first;
if(!SUM(is,js,ij,jj))
continue;
///8
is = it.second + 1;
js = its.first + 1;
ij = n;
jj = its.second;
if(!SUM(is,js,ij,jj))
continue;
///9
is = it.second + 1;
js = its.second + 1;
ij = n;
jj = n;
if(!SUM(is,js,ij,jj))
continue;
g << it.first << " " << it.second << " " << its.first << " " << its.second;
return 0;
}
return 0;
}