fixed bug: arithmetic negative was tranlsated as boolean negative.