import sys
import math
def distance(x1, y1, x2, y2):
"""Returns the distance between two points in a 2D space"""
return math.sqrt(math.pow(x1 - x2, 2) + math.pow(y1 - y2, 2))
if len(sys.argv) < 6:
line = sys.stdin.readline()
sys.argv[1:] = line.split(" ")
width = int(sys.argv[1])
height = int(sys.argv[2]) * 2 # Y coordinates are double in the internal space
centerX = float(sys.argv[3])
centerY = float(sys.argv[4]) * 2 # Y coordinates are double in the internal space
if len(sys.argv) == 7:
radius = float(sys.argv[5])
gradient = sys.argv[6]
elif len(sys.argv) == 6:
radius = max( distance(centerX, centerY, width, height),
distance(centerX, centerY, 0, 0),
distance(centerX, centerY, width, 0),
distance(centerX, centerY, 0, height) )
gradient = sys.argv[5]
regionSize = radius / len(gradient)
gradient += ' ' * int( distance(0,0, width, height))
for y in xrange(0, height, 2): # We only care about even lines
line = ""
for x in xrange(width):
region = int(distance(centerX, centerY, x , y ) / regionSize)
line += gradient[region]
print line
aW1wb3J0IHN5cwppbXBvcnQgbWF0aAoKZGVmIGRpc3RhbmNlKHgxLCB5MSwgeDIsIHkyKToKICAgICIiIlJldHVybnMgdGhlIGRpc3RhbmNlIGJldHdlZW4gdHdvIHBvaW50cyBpbiBhIDJEIHNwYWNlIiIiCiAgICByZXR1cm4gbWF0aC5zcXJ0KG1hdGgucG93KHgxIC0geDIsIDIpICsgbWF0aC5wb3coeTEgLSB5MiwgMikpCgppZiBsZW4oc3lzLmFyZ3YpIDwgNjoKICAgIGxpbmUgPSBzeXMuc3RkaW4ucmVhZGxpbmUoKQogICAgc3lzLmFyZ3ZbMTpdID0gbGluZS5zcGxpdCgiICIpCgp3aWR0aCA9IGludChzeXMuYXJndlsxXSkKaGVpZ2h0ID0gaW50KHN5cy5hcmd2WzJdKSAqIDIgIyBZIGNvb3JkaW5hdGVzIGFyZSBkb3VibGUgaW4gdGhlIGludGVybmFsIHNwYWNlCmNlbnRlclggPSBmbG9hdChzeXMuYXJndlszXSkKY2VudGVyWSA9IGZsb2F0KHN5cy5hcmd2WzRdKSAqIDIgIyBZIGNvb3JkaW5hdGVzIGFyZSBkb3VibGUgaW4gdGhlIGludGVybmFsIHNwYWNlCgppZiBsZW4oc3lzLmFyZ3YpID09IDc6CiAgICByYWRpdXMgPSBmbG9hdChzeXMuYXJndls1XSkKICAgIGdyYWRpZW50ID0gc3lzLmFyZ3ZbNl0KZWxpZiBsZW4oc3lzLmFyZ3YpID09IDY6CiAgICByYWRpdXMgPSBtYXgoIGRpc3RhbmNlKGNlbnRlclgsIGNlbnRlclksIHdpZHRoLCBoZWlnaHQpLCAKICAgICAgICAgICAgICBkaXN0YW5jZShjZW50ZXJYLCBjZW50ZXJZLCAwLCAwKSwKICAgICAgICAgICAgICBkaXN0YW5jZShjZW50ZXJYLCBjZW50ZXJZLCB3aWR0aCwgMCksIAogICAgICAgICAgICAgIGRpc3RhbmNlKGNlbnRlclgsIGNlbnRlclksIDAsIGhlaWdodCkgKQogICAgZ3JhZGllbnQgPSBzeXMuYXJndls1XQoKcmVnaW9uU2l6ZSA9IHJhZGl1cyAvIGxlbihncmFkaWVudCkKZ3JhZGllbnQgKz0gJyAnICogaW50KCBkaXN0YW5jZSgwLDAsIHdpZHRoLCBoZWlnaHQpKQoKZm9yIHkgaW4geHJhbmdlKDAsIGhlaWdodCwgMik6ICMgV2Ugb25seSBjYXJlIGFib3V0IGV2ZW4gbGluZXMKICAgIGxpbmUgPSAiIgogICAgZm9yIHggaW4geHJhbmdlKHdpZHRoKToKICAgICAgICByZWdpb24gPSBpbnQoZGlzdGFuY2UoY2VudGVyWCwgY2VudGVyWSwgeCAsIHkgKSAvIHJlZ2lvblNpemUpIAogICAgICAgIGxpbmUgKz0gZ3JhZGllbnRbcmVnaW9uXQogICAgcHJpbnQgbGluZQ==