def echo(x):
return x
def foo(s):
d = {}
exec(s, {}, d)
return dict((x,y) for x,y in d.items())
def bar(s):
d = {}
exec(s, {}, d)
return dict((x, echo(y)) for x,y in d.items()) # comment this to compile
s = 'a=1'
foo(s)
ZGVmIGVjaG8oeCk6CiAgICByZXR1cm4geAoKZGVmIGZvbyhzKToKICAgIGQgPSB7fQogICAgZXhlYyhzLCB7fSwgZCkKICAgIHJldHVybiBkaWN0KCh4LHkpIGZvciB4LHkgaW4gZC5pdGVtcygpKQoKZGVmIGJhcihzKToKICAgIGQgPSB7fQogICAgZXhlYyhzLCB7fSwgZCkKICAgIHJldHVybiBkaWN0KCh4LCBlY2hvKHkpKSBmb3IgeCx5IGluIGQuaXRlbXMoKSkgIyBjb21tZW50IHRoaXMgdG8gY29tcGlsZQoKcyA9ICdhPTEnCmZvbyhzKQo=