second pass on tranactions