code: func (st *TxnState) IterReverse(k kv.Key) (kv.Iterator, error) {
  	bufferIt, err := st.buf.IterReverse(k)
  	if err != nil {
  		return nil, err
  	}
  	retrieverIt, err := st.Transaction.IterReverse(k)
  	if err != nil {
  		return nil, err
  	}
  	return kv.NewUnionIter(bufferIt, retrieverIt, true)
  }
docs: // IterReverse overrides the Transaction interface.