interpolate implemented