I think I'd prefer a switch case for all the stuff below... this if chaining is painful to read and each alternative terminates the chain.