adding easing fuction support