Recent changes eliminate a large amount of copying in validation code. I’ve got another big change coming, which should eliminate all other unnecessary copying in validation. As script and witness data elements enter the stack, but never actually change, op.data and stack elements become data_chunk::ptr.