added default value constructor for function, changed first argument of Interpolate to function