code: def test_exotic_formats(self):
      # Test that 'exotic' formats are processed properly
      easy = mrecarray(
          1, dtype=[("i", int), ("s", "|S8"), ("f", float)]
      )
      easy[0] = masked
      assert_equal(easy.filled(1).item(), (1, b"1", 1.0))
  
      solo = mrecarray(1, dtype=[("f0", "<f8", (2, 2))])
      solo[0] = masked
      assert_equal(
          solo.filled(1).item(), np.array((1,), dtype=solo.dtype).item()
      )
  
      mult = mrecarray(2, dtype="i4, (2,3)float, float")
      mult[0] = masked
      mult[1] = (1, 1, 1)
      mult.filled(0)
      assert_equal_records(
          mult.filled(0),
          np.array([(0, 0, 0), (1, 1, 1)], dtype=mult.dtype),
      )
  
imports: import pickle
  import numpy
  import numpy.ma
  from numpy.ma import masked, nomask
  from numpy.testing import temppath
  from numpy._core.records import recarray, fromrecords, fromarrays
  from numpy.ma.mrecords import MaskedRecords, mrecarray, fromarrays, fromtextfile, fromrecords, addfield
  from numpy.ma.testutils import assert_, assert_equal, assert_equal_records
label_desc: Use image node_id 15 for calling the TestMRecords obj's underlying member method code with example usage: obj.test_exotic_formats() without return types