def max_all(iterable, *, key):
it = iter(iterable)
max_values = [next(it)]
max_key = key(max_values[0])
for x in it:
x_key = key(x)
if x_key > max_key:
max_values = [x]
max_key = x_key
elif x_key == max_key:
max_values.append(x)
return max_values
d = {'x1': 2, 'x2': 2}
print(max_all(d, key=d.get))
ZGVmIG1heF9hbGwoaXRlcmFibGUsICosIGtleSk6CiAgICBpdCA9IGl0ZXIoaXRlcmFibGUpCiAgICBtYXhfdmFsdWVzID0gW25leHQoaXQpXQogICAgbWF4X2tleSA9IGtleShtYXhfdmFsdWVzWzBdKQoKICAgIGZvciB4IGluIGl0OgogICAgICAgIHhfa2V5ID0ga2V5KHgpCgogICAgICAgIGlmIHhfa2V5ID4gbWF4X2tleToKICAgICAgICAgICAgbWF4X3ZhbHVlcyA9IFt4XQogICAgICAgICAgICBtYXhfa2V5ID0geF9rZXkKICAgICAgICBlbGlmIHhfa2V5ID09IG1heF9rZXk6CiAgICAgICAgICAgIG1heF92YWx1ZXMuYXBwZW5kKHgpCgogICAgcmV0dXJuIG1heF92YWx1ZXMKICAgIAogICAgCmQgPSB7J3gxJzogMiwgJ3gyJzogMn0KcHJpbnQobWF4X2FsbChkLCBrZXk9ZC5nZXQpKQ==