code: def test_subtype_equalities():
      # Check cmap compare equal if subtypes, on either side
      in_cs = CoordinateSystem("ijk")
      out_cs = CoordinateSystem("xyz")
      f = lambda x: x + 1
      cmap = CoordinateMap(in_cs, out_cs, f)
  
      class CM2(CoordinateMap):
          pass
  
      cmap2 = CM2(in_cs, out_cs, f)
      assert cmap == cmap2
      assert cmap2 == cmap
      cmap = AffineTransform(in_cs, out_cs, np.eye(4))
  
      class AT2(AffineTransform):
          pass
  
      cmap2 = AT2(in_cs, out_cs, np.eye(4))
      assert cmap == cmap2
      assert cmap2 == cmap
  
imports: from copy import copy
  from types import SimpleNamespace
  import numpy
  from ..coordinate_map import AffineTransform, AxisError, CoordinateMap, CoordMapMaker, CoordMapMakerError, _as_coordinate_map, _fix0, append_io_dim, axmap, compose, drop_io_dim, equivalent, input_axis_index, io_axis_indices, orth_axes, product, shifted_domain_origin, shifted_range_origin
  from ..coordinate_system import CoordinateSystem, CoordinateSystemError, CoordSysMaker
  import pytest
  from numpy.testing import assert_almost_equal, assert_array_equal
label_desc: Use image node_id 41 for calling a global function with example usage: test_subtype_equalities() without return types