We could reuse all the operators defined in vec2<>, including operator bool() that checks if the contained values are !NaN.