import numpy as np
H, W, A, B = map(int, input().split())

mat = [np.array(([0] * A) + ([1] * (W - A))) for _ in range(H)]

for i in range(min(H, B)):
    mat[i] = 1 - mat[i]

mat = [r.astype(str).tolist() for r in mat]
print("\n".join("".join(r) for r in mat)) import numpy as np numpy H, W, A, B = map(int, input().split()) H map(int, input().split()) map int input().split() ().split () input split W A B np.array(([0] * A) + ([1] * (W - A))) for _ in range(H) for _ in range(H) _ range(H) range H for _ in range(H) np.array(([0] * A) + ([1] * (W - A))) np.array np array ([0] * A) + ([1] * (W - A)) [0] * A [0] 0 A [1] * (W - A) [1] 1 W - A W A mat = [np.array(([0] * A) + ([1] * (W - A))) for _ in range(H)] mat [np.array(([0] * A) + ([1] * (W - A))) for _ in range(H)] for i in range(min(H, B)):
    mat[i] = 1 - mat[i] i range(min(H, B)) range min(H, B) min H B mat[i] = 1 - mat[i] mat[i] mat i 1 - mat[i] 1 mat[i] mat i r.astype(str).tolist() for r in mat for r in mat r mat for r in mat r.astype(str).tolist() r.astype(str).tolist r.astype(str) r.astype r astype str tolist mat = [r.astype(str).tolist() for r in mat] mat [r.astype(str).tolist() for r in mat] print("\n".join("".join(r) for r in mat)) print "\n".join("".join(r) for r in mat) "\n".join "\n" join "".join(r) "".join "" join r B = map(int, input().split()) map(int, input().split()) B A, B = map(int, input().split()) map(int, input().split()) A mat = [r.astype(str).tolist() for r in mat] [r.astype(str).tolist() for r in mat] mat mat = [np.array(([0] * A) + ([1] * (W - A))) for _ in range(H)] [np.array(([0] * A) + ([1] * (W - A))) for _ in range(H)] mat W, A, B = map(int, input().split()) map(int, input().split()) W H, W, A, B = map(int, input().split()) map(int, input().split()) H
import numpy as np
H, W, A, B = map(int, input().split())

mat = [np.array(([0] * A) + ([1] * (W - A))) for _ in range(H)]

for i in range(min(H, B)):
    mat[i] = 1 - mat[i]

mat = [r.astype(str).tolist() for r in mat]
print("\n".join("".join(r) for r in mat))