merge from master
fixed an operator precedence bug