Special case empty lists
Add extra data
Store protocol version with events