code: def test_unaligned_nonnative_struct_fields(self):
      if sys.byteorder == "little":
          base = BigEndianStructure
          fmt = ">b h xi xd"
      else:
          base = LittleEndianStructure
          fmt = "<b h xi xd"
  
      class S(base):
          _pack_ = 1
          _fields_ = [
              ("b", c_byte),
              ("h", c_short),
              ("_1", c_byte),
              ("i", c_int),
              ("_2", c_byte),
              ("d", c_double),
          ]
  
      s1 = S()
      s1.b = 0x12
      s1.h = 0x1234
      s1.i = 0x12345678
      s1.d = 3.14
      s2 = struct.pack(fmt, 0x12, 0x1234, 0x12345678, 3.14)
      self.assertEqual(bin(s1), bin(s2))
  
imports: import binascii
  import ctypes
  import math
  import struct
  import sys
  import unittest
  from ctypes import Structure, Union, LittleEndianUnion, BigEndianUnion, BigEndianStructure, LittleEndianStructure, POINTER, sizeof, cast, c_byte, c_ubyte, c_char, c_wchar, c_void_p, c_short, c_ushort, c_int, c_uint, c_long, c_ulong, c_longlong, c_ulonglong, c_uint32, c_float, c_double
label_desc: Use image node_id 11 for calling the Test obj's underlying member method code with example usage: obj.test_unaligned_nonnative_struct_fields() without return types