def a(x):
def b(y): # input y when print
return x + y # y is not undefine at this moment until print, Closure on this line
return b # b is just an address, undefined data type
add10 = a(10)
add20 = a(20)
print(add10(5), add20(5))
print(a(10)(5),a(20)(5)) # same as line 7, so it is partial
# above: Let function become a constant