adding transaction capability