changing basic design
adding minor code changes
minor changes
removing transactions for clean up
minor changes