if order < 0 or order > 5:
raise RuntimeError("spline order not supported")
input = numpy.asarray(input)
if numpy.iscomplexobj(input):
raise TypeError("Complex type not supported")
if input.ndim < 1:
raise RuntimeError("input and output rank must be > 0")
if prefilter and order > 1:
padded, npad = _prepad_for_spline_filter(input, mode, cval)
filtered = spline_filter(padded, order, output=numpy.float64,
mode=mode)
else:
npad = 0
filtered = input
mode = _ni_support._extend_mode_to_code(mode)
output = _ni_support._get_output(output, input)
shift = _ni_support._normalize_sequence(shift, input.ndim)
shift = [-ii for ii in shift]
shift = numpy.asarray(shift, dtype=numpy.float64)
if not shift.flags.contiguous: