from sys import stdin
import sys
import numpy as np
import collections
from functools import cmp_to_key

##  input functions for me
def rsa(sep = ''):
    if sep == '' :
        return input().split() 
    else: return input().split(sep)
def rip(sep = ''):
    if sep == '' :
        return map(int, input().split()) 
    else: return map(int, input().split(sep))
def ria(sep = ''): 
    return list(rip(sep))
def ri(): return int(input())
def rd(): return float(input())
def rs(): return input()
##
def main():
    H, W, A, B = rip()
    a = [['0'] * W for i in range(H)]
    for i in range(B):
        for j in range(A):
            a[i][j] = '1'
    for i in range(B,H):
        for j in range(A,W):
            a[i][j] = '1'
    for i in range(H):
        print(''.join(a[i]))


if __name__ == "__main__":
    main() from sys import stdin import sys sys import numpy as np numpy import collections collections from functools import cmp_to_key def rsa(sep = ''):
    if sep == '' :
        return input().split() 
    else: return input().split(sep) rsa if sep == '' :
        return input().split() 
    else: return input().split(sep) sep == '' sep '' return input().split() input().split() ().split () input split sep = '' sep '' def rip(sep = ''):
    if sep == '' :
        return map(int, input().split()) 
    else: return map(int, input().split(sep)) rip if sep == '' :
        return map(int, input().split()) 
    else: return map(int, input().split(sep)) sep == '' sep '' return map(int, input().split()) map(int, input().split()) map int input().split() ().split () input split sep = '' sep '' def ria(sep = ''): 
    return list(rip(sep)) ria return list(rip(sep)) list(rip(sep)) list rip(sep) rip sep sep = '' sep '' def ri(): return int(input()) ri def rd(): return float(input()) rd def rs(): return input()
## rs def main():
    H, W, A, B = rip()
    a = [['0'] * W for i in range(H)]
    for i in range(B):
        for j in range(A):
            a[i][j] = '1'
    for i in range(B,H):
        for j in range(A,W):
            a[i][j] = '1'
    for i in range(H):
        print(''.join(a[i])) main H, W, A, B = rip() H rip() rip W A B ['0'] * W for i in range(H) for i in range(H) i range(H) range H for i in range(H) ['0'] * W ['0'] '0' W a = [['0'] * W for i in range(H)] a [['0'] * W for i in range(H)] for i in range(B):
        for j in range(A):
            a[i][j] = '1'
     i range(B) range B for j in range(A):
            a[i][j] = '1'
     j range(A) range A a[i][j] = '1' a[i][j] [i] a i j '1' for i in range(B,H):
        for j in range(A,W):
            a[i][j] = '1'
     i range(B,H) range B H for j in range(A,W):
            a[i][j] = '1'
     j range(A,W) range A W a[i][j] = '1' a[i][j] [i] a i j '1' for i in range(H):
        print(''.join(a[i])) i range(H) range H print(''.join(a[i])) print ''.join(a[i]) ''.join '' join a[i] a i if __name__ == "__main__":
    main() __name__ == "__main__" __name__ "__main__" main() main def ria(sep = ''): 
    return list(rip(sep)) def ria(sep = ''): 
    return list(rip(sep)) ria def rsa(sep = ''):
    if sep == '' :
        return input().split() 
    else: return input().split(sep) def rsa(sep = ''):
    if sep == '' :
        return input().split() 
    else: return input().split(sep) rsa def rs(): return input()
## def rs(): return input()
## rs def main():
    H, W, A, B = rip()
    a = [['0'] * W for i in range(H)]
    for i in range(B):
        for j in range(A):
            a[i][j] = '1'
    for i in range(B,H):
        for j in range(A,W):
            a[i][j] = '1'
    for i in range(H):
        print(''.join(a[i])) def main():
    H, W, A, B = rip()
    a = [['0'] * W for i in range(H)]
    for i in range(B):
        for j in range(A):
            a[i][j] = '1'
    for i in range(B,H):
        for j in range(A,W):
            a[i][j] = '1'
    for i in range(H):
        print(''.join(a[i])) main def rip(sep = ''):
    if sep == '' :
        return map(int, input().split()) 
    else: return map(int, input().split(sep)) def rip(sep = ''):
    if sep == '' :
        return map(int, input().split()) 
    else: return map(int, input().split(sep)) rip def ri(): return int(input()) def ri(): return int(input()) ri def rd(): return float(input()) def rd(): return float(input()) rd
from sys import stdin
import sys
import numpy as np
import collections
from functools import cmp_to_key

##  input functions for me
def rsa(sep = ''):
    if sep == '' :
        return input().split() 
    else: return input().split(sep)
def rip(sep = ''):
    if sep == '' :
        return map(int, input().split()) 
    else: return map(int, input().split(sep))
def ria(sep = ''): 
    return list(rip(sep))
def ri(): return int(input())
def rd(): return float(input())
def rs(): return input()
##
def main():
    H, W, A, B = rip()
    a = [['0'] * W for i in range(H)]
    for i in range(B):
        for j in range(A):
            a[i][j] = '1'
    for i in range(B,H):
        for j in range(A,W):
            a[i][j] = '1'
    for i in range(H):
        print(''.join(a[i]))


if __name__ == "__main__":
    main()
