identify condtion ops more elegantly