This program is used as the primary L3 farm process. It is a standard JANA program, but has the ability to reconstitute single events based only on the low-level objects in memory. The code for this is contained mainly in JEventProcessor_L3proc. This is done in a way that allows the reconstitution to be done multi-threaded. This involves using a buffer pool for the EVIO events. The buffer pool itself is maintained by the L3farm_out class. This class keeps track of buffers of events so it can stack them up into single EVIO blocks for writing. This should mainly benefit the online environment where writing many events into a single ET event improves efficiency.