code: def _quadratic_coeff(signal):
      zi = -3 + 2 * cupy.sqrt(2.0)
      K = len(signal)
      powers = zi ** cupy.arange(K)
  
      if K == 1:
          yplus = signal[0] + zi * cupy.sum(powers * signal)
          output = zi / (zi - 1) * yplus
          return cupy.atleast_1d(output)
  
      state = cupy.r_[0, 0, 0, cupy.sum(powers * signal)]
      state = cupy.atleast_2d(state)
      coef = cupy.r_[1, 0, 0, 1, -zi, 0]
      coef = cupy.atleast_2d(coef)
  
      # yplus[0] = signal[0] + zi * cupy.sum(powers * signal)
      # for k in range(1, K):
      #     yplus[k] = signal[k] + zi * yplus[k - 1]
      yplus, _ = apply_iir_sos(
          signal, coef, zi=state, apply_fir=False, dtype=signal.dtype
      )
  
      out_last = zi / (zi - 1) * yplus[K - 1]
      state = cupy.r_[0, 0, 0, out_last]
      state = cupy.atleast_2d(state)
  
      coef = cupy.r_[-zi, 0, 0, 1, -zi, 0]
      coef = cupy.atleast_2d(coef)
  
      # output[K - 1] = zi / (zi - 1) * yplus[K - 1]
      # for k in range(K - 2, -1, -1):
      #     output[k] = zi * (output[k + 1] - yplus[k])
      output, _ = apply_iir_sos(
          yplus[-2::-1], coef, zi=state, dtype=signal.dtype
      )
      output = cupy.r_[output[::-1], out_last]
      return output * 8.0
  
imports: import cupy
  import cupyx.scipy.ndimage
  from cupyx.scipy.signal._iir_utils import apply_iir_sos
  from cupyx.scipy.signal._splines import _symiirorder1_nd, _symiirorder2_nd
  from cupyx.scipy.interpolate._bspline import BSpline
  import numpy
label_desc: Use image node_id 9 for calling a global function with example usage: _quadratic_coeff(signal) and returns: unknown, cupy