make consistent: receiver is of type pointer type
actually use the transaction
get rid of one variable