in reply to Set Combination

It's not clear how you set these variables. Maybe you should use exist() instead of eq ""

Your code will look better if you change the !(...and...) to (...or...)