code: def _get_dtype_value1_value2_cov(
      draw,
      available_dtypes,
      min_num_dims=1,
      max_num_dims=2,
      min_dim_size=2,
      max_dim_size=3,
      abs_smallest_val=None,
      min_value=None,
      max_value=None,
      allow_inf=False,
      exclude_min=False,
      exclude_max=False,
      large_abs_safety_factor=50,
      small_abs_safety_factor=50,
      safety_factor_scale="log",
  ):
      shape = draw(
          helpers.get_shape(
              allow_none=False,
              min_num_dims=min_num_dims,
              max_num_dims=max_num_dims,
              min_dim_size=min_dim_size,
              max_dim_size=max_dim_size,
          )
      )
  
      dtype = draw(st.sampled_from(available_dtypes))
  
      values = []
      for i in range(2):
          values.append(
              draw(
                  helpers.array_values(
                      dtype=dtype,
                      shape=shape,
                      abs_smallest_val=abs_smallest_val,
                      min_value=min_value,
                      max_value=max_value,
                      allow_inf=allow_inf,
                      exclude_min=exclude_min,
                      exclude_max=exclude_max,
                      large_abs_safety_factor=large_abs_safety_factor,
                      small_abs_safety_factor=small_abs_safety_factor,
                      safety_factor_scale=safety_factor_scale,
                  )
              )
          )
  
      value1, value2 = values[0], values[1]
  
      # modifiers: rowVar, bias, ddof
      rowVar = draw(st.booleans())
      bias = draw(st.booleans())
      ddof = draw(helpers.ints(min_value=0, max_value=1))
  
      numVals = None
      if rowVar is False:
          numVals = -1 if numVals == 0 else 0
      else:
          numVals = 0 if len(shape) == 1 else -1
  
      fweights = None
  
      aweights = draw(
          helpers.array_values(
              dtype=dtype,
              shape=shape[numVals],
              abs_smallest_val=1,
              min_value=1,
              max_value=10,
              allow_inf=False,
              small_abs_safety_factor=1,
          )
      )
  
      return (
          [dtype],
          value1,
          value2,
          rowVar,
          bias,
          ddof,
          fweights,
          aweights,
      )
  
imports: from hypothesis import strategies, assume
  import numpy
  import ivy
  import ivy_tests.test_ivy.helpers
  import ivy_tests.test_ivy.test_frontends.test_numpy.helpers
  from ivy_tests.test_ivy.helpers import handle_frontend_test
  from ivy_tests.test_ivy.test_functional.test_core.test_statistical import _statistical_dtype_values, _get_castable_dtype
  from ivy import inf
label_desc: Use image node_id 4 for calling a global function with example usage: _get_dtype_value1_value2_cov(draw, available_dtypes, min_num_dims, max_num_dims, min_dim_size, max_dim_size, abs_smallest_val, min_value, max_value, allow_inf, exclude_min, exclude_max, large_abs_safety_factor, small_abs_safety_factor, safety_factor_scale) and returns: list,  value1,  value2,  rowVar,  bias,  ddof,  fweights,  aweights