def arith_op(self):
    localctx = decafJavierParser.Arith_opContext(self, self._ctx, self.state)
    self.enterRule(localctx, 42, self.RULE_arith_op)
    self._la = 0
    try:
        self.enterOuterAlt(localctx, 1)
        self.state = 277
        _la = self._input.LA(1)
        if (not (((_la & (~ 63)) == 0) and (((1 << _la) & (((((1 << decafJavierParser.ADD) | (1 << decafJavierParser.SUB)) | (1 << decafJavierParser.MULTIPLY)) | (1 << decafJavierParser.DIVIDE)) | (1 << decafJavierParser.REMINDER))) != 0))):
            self._errHandler.recoverInline(self)
        else:
            self._errHandler.reportMatch(self)
            self.consume()
    except RecognitionException as re:
        localctx.exception = re
        self._errHandler.reportError(self, re)
        self._errHandler.recover(self, re)
    finally:
        self.exitRule()
    return localctx
def arith_op(self):
    localctx = decafJavierParser.Arith_opContext(self, self._ctx, self.state)
    self.enterRule(localctx, 42, self.RULE_arith_op)
    self._la = 0
    try:
        self.enterOuterAlt(localctx, 1)
        self.state = 277
        _la = self._input.LA(1)
        if (not (((_la & (~ 63)) == 0) and (((1 << _la) & (((((1 << decafJavierParser.ADD) | (1 << decafJavierParser.SUB)) | (1 << decafJavierParser.MULTIPLY)) | (1 << decafJavierParser.DIVIDE)) | (1 << decafJavierParser.REMINDER))) != 0))):
            self._errHandler.recoverInline(self)
        else:
            self._errHandler.reportMatch(self)
            self.consume()
    except RecognitionException as re:
        localctx.exception = re
        self._errHandler.reportError(self, re)
        self._errHandler.recover(self, re)
    finally:
        self.exitRule()
    return localctx