added lots of transaction stuff...