code: def _get_castable_float_dtype_nan(
      draw, min_value=None, max_value=None
  ):
      available_dtypes = helpers.get_dtypes("float")
      shape = draw(
          helpers.get_shape(
              min_num_dims=1, max_num_dims=4, max_dim_size=6
          )
      )
      dtype3, where = draw(
          helpers.dtype_and_values(
              available_dtypes=["bool"], shape=shape
          )
      )
      dtype, values = draw(
          helpers.dtype_and_values(
              available_dtypes=available_dtypes,
              num_arrays=1,
              large_abs_safety_factor=6,
              small_abs_safety_factor=24,
              safety_factor_scale="log",
              shape=shape,
              min_value=min_value,
              max_value=max_value,
              allow_nan=True,
          )
      )
      axis = draw(helpers.get_axis(shape=shape, force_int=True))
      dtype1, values, dtype2 = draw(
          helpers.get_castable_dtype(
              draw(available_dtypes), dtype[0], values[0]
          )
      )
      return dtype1, [values], axis, dtype2, dtype3, where
  
imports: from hypothesis import strategies
  import numpy
  import ivy_tests.test_ivy.helpers
  from ivy_tests.test_ivy.helpers import handle_test
  from ivy_tests.test_ivy.test_functional.test_core.test_statistical import _statistical_dtype_values, _get_castable_dtype
label_desc: Use image node_id 1 for calling a global function with example usage: _get_castable_float_dtype_nan(draw, min_value, max_value) and returns: dtype1,  list,  axis,  dtype2,  dtype3,  where