code: def size_in_bytes(self, offset, timestamp, key, value, headers):
      if self._first_timestamp is not None:
          timestamp_delta = timestamp - self._first_timestamp
      else:
          timestamp_delta = 0
      size_of_body = (
          1
          + size_of_varint(offset)  # Attrs
          + size_of_varint(timestamp_delta)
          + self.size_of(key, value, headers)
      )
      return size_of_body + size_of_varint(size_of_body)
  
imports: import struct
  import time
  from kafka.record.abc import ABCRecord, ABCRecordBatch, ABCRecordBatchBuilder
  from kafka.record.util import decode_varint, encode_varint, calc_crc32c, size_of_varint
  from kafka.errors import CorruptRecordException, UnsupportedCodecError
  from kafka.codec import gzip_encode, snappy_encode, lz4_encode, zstd_encode, gzip_decode, snappy_decode, lz4_decode, zstd_decode
  import kafka.codec
label_desc: Use image node_id 8 for calling the DefaultRecordBatchBuilder obj's underlying member method code with example usage: obj.size_in_bytes(offset, timestamp, key, value, headers) and returns: unknown