add lerp function