cleaned up decrypt