Do less expensive assignment first

As we might not use the more expensive one
Use OR rather than if