working decryption