working on read decrytion