make generator use transaction-data instead of accessing values directly