code: def run_forward_and_inverse_transforms(
      dtype, container_type, min_corner, max_corner, crs_to
  ):
      num_points_x = 100
      num_points_y = 100
  
      x, y = np.meshgrid(
          np.linspace(
              min_corner[0], max_corner[0], num_points_y, dtype=dtype
          ),
          np.linspace(
              min_corner[1], max_corner[1], num_points_x, dtype=dtype
          ),
      )
      grid = [x.reshape(-1), y.reshape(-1)]
  
      # Transform to UTM using PyProj
      transformer = Transformer.from_crs("EPSG:4326", crs_to)
      pyproj_x, pyproj_y = transformer.transform(*grid)
  
      # Transform to UTM using cuproj
      cu_grid = container_type(grid)
      cu_transformer = cuTransformer.from_crs("EPSG:4326", crs_to)
      cuproj_x, cuproj_y = cu_transformer.transform(*cu_grid)
  
      # Expect within 5m for float32, 100nm for float64
      atol = 5 if dtype == cp.float32 else 1e-07
  
      assert_allclose(cuproj_x, pyproj_x, atol=atol)
      assert_allclose(cuproj_y, pyproj_y, atol=atol)
  
      # Transform back to WGS84 using PyProj
      pyproj_x_back, pyproj_y_back = transformer.transform(
          pyproj_x, pyproj_y, direction=TransformDirection.INVERSE
      )
  
      # Transform back to WGS84 using cuproj
      cuproj_x_back, cuproj_y_back = cu_transformer.transform(
          cuproj_x, cuproj_y, direction="INVERSE"
      )
  
      assert_allclose(cuproj_x_back, pyproj_x_back, atol=atol)
      assert_allclose(cuproj_y_back, pyproj_y_back, atol=atol)
  
      # Also test inverse-constructed Transformers
  
      # Transform back to WGS84 using PyProj
      transformer = Transformer.from_crs(crs_to, "EPSG:4326")
      pyproj_x_back, pyproj_y_back = transformer.transform(
          pyproj_x, pyproj_y
      )
  
      # Transform back to WGS84 using cuproj
      cu_transformer = cuTransformer.from_crs(crs_to, "EPSG:4326")
      cuproj_x_back, cuproj_y_back = cu_transformer.transform(
          cuproj_x, cuproj_y
      )
  
      assert_allclose(cuproj_x_back, pyproj_x_back, atol=atol)
      assert_allclose(cuproj_y_back, pyproj_y_back, atol=atol)
  
imports: import cupy
  import geopandas
  import numpy
  import pytest
  from cupy.testing import assert_allclose
  from pyproj import Transformer
  from pyproj.enums import TransformDirection
  from shapely.geometry import Point
  import cuspatial
  from cuproj import Transformer
label_desc: Use image node_id 10 for calling a global function with example usage: run_forward_and_inverse_transforms(dtype, container_type, min_corner, max_corner, crs_to) without return types