#include <iostream>
using namespace std;
int init(int a, int b){
int n = max(abs(a), abs(b));
int v = 2 * n + 1;
v *= v;
int d = 2 * n;
if(a == n){
return v - n + b;
}
v -= d;
if(b == -n){
return v - n + a;
}
v -= d;
if(a == -n){
return v - b - n;
}
v -= d;
return v - a - n;
}
int cal(int v){
return v ? cal(v / 10) + 1 : 0;
}
int main(){
int y1, x1, y2, x2;
cin >> y1 >> x1 >> y2 >> x2;
int tmp = 0;
for(int i=y1; i<=y2; i++){
for(int j=x1; j<=x2; j++){
tmp = max(tmp, cal(init(i, j)));
}
}
for(int i=y1; i<=y2; i++){
for(int j=x1; j<=x2; j++){
cout.width(tmp);
cout << std::right << init(i, j) << " ";
}
cout << "\n";
}
return 0;
}