edited interpolate