better handling of binary expressions