#include <iostream>
using namespace std;
int sum=0;
void f(int point[][22],int m,int n){
if(point[m][n]==2){
sum++;
return;
}else if(point[m][n]==1){
return ;
}else if(point[m][n]!=1){
f(point,m+1,n),f(point,m,n+1);
}
}
int main(){
int point[22][22]={0};
int dx[8]={-2,-1,1,2,2,1,-1,-2};
int dy[8]={1,2,2,1,-1,-2,-2,-1};
int a,b,c,d;
int m,n;
cin>>a>>b>>c>>d;
point[a][b]=2;
for(int i=0;i<=a+1;i++){
point[i][b+1]=1;
}
for(int j=0;j<=b+1;j++){
point[a+1][j]=1;
}
point[c][d]=1;
for(int i=0;i<8;i++)
if(c+dx[i]>=0&&c+dx[i]<=a&&d+dy[i]>=0&&d+dy[i]<=b)
point[c+dx[i]][d+dy[i]]=1;
f(point,0,0);
for(int i=0;i<22;i++){
for(int j=0;j<22;j++){
cout<<point[i][j];
}
cout<<endl;
}
cout<<sum;
}