separate collection and printing
zoom optional
begin to support payload
todo