Make set() a bit clearer

And leave room for handling the other situations