Smooth function added