working put transaction