code: def _call(self, x, out=None):
          
          def per_axis_interp(arg, out=None):
              """Interpolating function with vectorization."""
              if is_valid_input_meshgrid(arg, self.grid.ndim):
                  input_type = 'meshgrid'
              else:
                  input_type = 'array'
  
              interpolator = _PerAxisInterpolator(
                  self.grid.coord_vectors, x,
                  schemes=self.schemes, nn_variants=self.nn_variants,
                  input_type=input_type)
  
              return interpolator(arg, out=out)
  
          return self.range.element(per_axis_interp, vectorized=True)
docs: Create an interpolator from grid values ``x``.
  
          Parameters
          ----------
          x : `Tensor`
              The array of values to be interpolated
          out : `FunctionSpaceElement`, optional
              Element in which to store the interpolator
  
          Returns
          -------
          out : `FunctionSpaceElement`
              Per-axis interpolator for the grid of this operator. If
              ``out`` was provided, the returned object is a reference
              to it.