This changes behaviour: for isHadron not being either 0 or 1 the new code returns some value, while the old code asserts. Not sure if that's acceptable and/or what you wanted ...:)  As it's not really my area of expertise, I'll still +1 for DB.