start of fixes issue #35 by introducing transaction event