packagesequencerimport("bytes""fmt"l2types"github.com/ethereum-optimism/optimism/l2geth/core/types")typeCachedTxstruct{tx*l2types.TransactionrawTx[]byte}funcNewCachedTx(tx*l2types.Transaction)*CachedTx{vartxBufbytes.Bufferiferr:=tx.EncodeRLP(&txBuf);err!=nil{panic(fmt.Sprintf("Unable to encode tx: %v",err))}return&CachedTx{tx:tx,rawTx:txBuf.Bytes(),}}func(t*CachedTx)Tx()*l2types.Transaction{returnt.tx}func(t*CachedTx)Size()int{returnlen(t.rawTx)}func(t*CachedTx)RawTx()[]byte{returnt.rawTx}