code: def assert_maker_inheritance_valid(new_crs, class_type):
      assert isinstance(new_crs, class_type)
      assert isinstance(new_crs.geodetic_crs, (type(None), CRS))
      assert isinstance(new_crs.source_crs, (type(None), CRS))
      assert isinstance(new_crs.target_crs, (type(None), CRS))
      assert isinstance(new_crs.to_3d(), CRS)
      for sub_crs in new_crs.sub_crs_list:
          assert isinstance(sub_crs, CRS)
  
imports: import pytest
  from pyproj.crs import CRS, BoundCRS, CompoundCRS, CustomConstructorCRS, DerivedGeographicCRS, GeocentricCRS, GeographicCRS, ProjectedCRS, VerticalCRS
  from pyproj.crs.coordinate_operation import AlbersEqualAreaConversion, LambertConformalConic2SPConversion, RotatedLatitudeLongitudeConversion, ToWGS84Transformation, TransverseMercatorConversion, UTMConversion
  from pyproj.crs.coordinate_system import Cartesian2DCS, Ellipsoidal3DCS, VerticalCS
  from pyproj.crs.datum import CustomDatum
  from pyproj.crs.enums import VerticalCSAxis
  from pyproj.exceptions import CRSError
  from test.conftest import PROJ_GTE_901, assert_can_pickle
label_desc: Use image node_id 1 for calling a global function with example usage: assert_maker_inheritance_valid(new_crs, class_type) without return types