code: def check_type_forward(self, in_types):
      n_in = in_types.size()
      type_check.expect(2 == n_in)
  
      x_type = in_types[0]
      grid_type = in_types[1]
      type_check.expect(
          x_type.dtype.kind == "f",
          grid_type.dtype == x_type.dtype,
          x_type.ndim == 4,
          grid_type.ndim == 4,
          grid_type.shape[1] == 2,
          x_type.shape[0] == grid_type.shape[0],
      )
  
file_path: chainer/chainer/functions/array/spatial_transformer_sampler.py
imports: import numpy
  import chainer
  from chainer import backend
  from chainer.backends import cuda
  from chainer import function
  from chainer.utils import argument
  from chainer.utils import type_check
label_desc: Use image node_id 1 for calling the SpatialTransformerSampler obj's underlying member method code with example usage: obj.check_type_forward(in_types) without return types