variables are guaranteed to be unique