hmm.. what if they are all defined? the entire thing would evaluate to false, making it not to error