add interpolation functions