implement binary operator parsing