- added more transactionality
- updated version