def outer(n):
res = []
for i in range(n):
def closure(x):
def inner():
return x
return inner
res.append(closure(i))
return res
for f in outer(3):
print(f())
ZGVmIG91dGVyKG4pOgogICAgcmVzID0gW10KICAgIGZvciBpIGluIHJhbmdlKG4pOgogICAgICAgIGRlZiBjbG9zdXJlKHgpOgogICAgICAgICAgICBkZWYgaW5uZXIoKToKICAgICAgICAgICAgICAgIHJldHVybiB4CiAgICAgICAgICAgIHJldHVybiBpbm5lcgogICAgICAgIHJlcy5hcHBlbmQoY2xvc3VyZShpKSkKICAgIHJldHVybiByZXMKCmZvciBmIGluIG91dGVyKDMpOgogICAgcHJpbnQoZigpKQ==