# -- read input --
(x, X, y, Y) = map(int, raw_input().split())
N = int(raw_input())
xhash = {}
for _ in range(N):
(x1, x2, v) = map(int, raw_input().split())
xhash[x1] = v
xhash[x2] = 0
# -- print chart --
d_x, d_y = len(str(X)), len(str(Y))
fmt = lambda x: '*'.rjust(d_x) if a <= xhash[x] else ' '.rjust(d_x)
keys = sorted(xhash.keys())
for a in range(Y, y-1, -1):
print str(a).rjust(d_y), ' '.join(map(fmt, keys))
print str('').rjust(d_y), ' '.join(map(lambda x: str(x).rjust(d_x), keys))
IyAtLSByZWFkIGlucHV0IC0tCih4LCBYLCB5LCBZKSA9IG1hcChpbnQsIHJhd19pbnB1dCgpLnNwbGl0KCkpCk4gPSBpbnQocmF3X2lucHV0KCkpCnhoYXNoID0ge30KZm9yIF8gaW4gcmFuZ2UoTik6CiAgICAoeDEsIHgyLCB2KSA9IG1hcChpbnQsIHJhd19pbnB1dCgpLnNwbGl0KCkpCiAgICB4aGFzaFt4MV0gPSB2CiAgICB4aGFzaFt4Ml0gPSAwCiMgLS0gcHJpbnQgY2hhcnQgLS0KZF94LCBkX3kgPSBsZW4oc3RyKFgpKSwgbGVuKHN0cihZKSkKZm10ID0gbGFtYmRhIHg6ICcqJy5yanVzdChkX3gpIGlmIGEgPD0geGhhc2hbeF0gZWxzZSAnICcucmp1c3QoZF94KQprZXlzID0gc29ydGVkKHhoYXNoLmtleXMoKSkKZm9yIGEgaW4gcmFuZ2UoWSwgeS0xLCAtMSk6CiAgICBwcmludCBzdHIoYSkucmp1c3QoZF95KSwgJyAnLmpvaW4obWFwKGZtdCwga2V5cykpCnByaW50IHN0cignJykucmp1c3QoZF95KSwgJyAnLmpvaW4obWFwKGxhbWJkYSB4OiBzdHIoeCkucmp1c3QoZF94KSwga2V5cykp