code: def list_widest_type_cast(target_dtype):
      """Get the widest type cast ops list"""
      if target_dtype in ["float16", np.float16]:
          return lists.symbol_fp16.WIDEST_TYPE_CASTS
      else:
          assert (
              get_dtype_name(target_dtype) in bfloat16.names
          ), "not supported type"
          return lists.symbol_bf16.WIDEST_TYPE_CASTS
  
imports: from array import array
  import ctypes
  import inspect
  import logging
  import contextlib
  import sys
  import numpy
  from mxnet import numpy
  from ..None import symbol
  from ..device import gpu
  from ..symbol import Symbol
  from ..symbol import contrib
  from ..None import ndarray
  from ..ndarray import NDArray, dtype_np_to_mx, get_dtype_type, get_dtype_name, bfloat16
  from .None import lists
  from ..gluon import Block, HybridBlock, trainer
  from ..None import base
  from ..base import _NP_OP_PREFIX, _NP_OP_SUBMODULE_LIST, _NP_EXT_OP_PREFIX, _NP_EXT_OP_SUBMODULE_LIST, _NP_INTERNAL_OP_PREFIX, c_str_array, c_str, c_array_buf, SymbolHandle, check_call, _LIB
  from ..None import optimizer
  from .loss_scaler import LossScaler
  from ..operator import get_all_registered_operators_grouped
  from ..util import wrap_ctx_to_device_func
label_desc: Use image node_id 18 for calling a global function with example usage: list_widest_type_cast(target_dtype) and returns: lists, lists