code: def _make_well_conditioned_matrices(self, shape):
      a = self._make_random_matrices(shape, numpy)
      u, s, vh = numpy.linalg.svd(a)
      s = (
          testing.shaped_random(
              s.shape, numpy, dtype=self.r_dtype, scale=1
          )
          + 1
      )
      a = numpy.einsum("...ik,...k,...kj->...ij", u, s, vh)
      return cupy.array(a)
  
imports: import numpy
  import pytest
  import cupy
  from cupy import cublas
  from cupy import testing
label_desc: Use image node_id 2 for calling the TestBatchedGesv obj's underlying member method code with example usage: obj._make_well_conditioned_matrices(shape) and returns: cupy