<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def FromReadings(cls, uuid, readings, sent_timestamp=0):
 """Generate a broadcast report from a list of readings and a uuid."""


        header = struct.pack("<BBHLLL", cls.ReportType, 0, len(readings)*16, uuid, sent_timestamp, 0)

        packed_readings = bytearray()

        for reading in readings:
            packed_reading = struct.pack("<HHLLL", reading.stream, 0, reading.reading_id,
                                         reading.raw_time, reading.value)
            packed_readings += bytearray(packed_reading)

        return BroadcastReport(bytearray(header) + packed_readings)