keeping theme and effect lists order as in protocol.h