def prettier(func):
print("Inside prettier")
def wrapper():
print("Making pretty")
func()
return wrapper
@prettier
def ordinary_gift():
print("My ordinary gift")
ordinary_gift()
print("Also This will produce same result")
# @prettier is syntactic sugar of following
ordinary_gift = prettier(ordinary_gift)
ordinary_gift()