refactor the tx a bit again. perhaps done with first half of 3.2.3