def block(self):
    localctx = decafJavierParser.BlockContext(self, self._ctx, self.state)
    self.enterRule(localctx, 16, self.RULE_block)
    self._la = 0
    try:
        self.enterOuterAlt(localctx, 1)
        self.state = 127
        self.match(decafJavierParser.LCURLY)
        self.state = 131
        self._errHandler.sync(self)
        _la = self._input.LA(1)
        while ((_la == decafJavierParser.BOOLEAN) or (_la == decafJavierParser.INT)):
            self.state = 128
            self.vardeclr()
            self.state = 133
            self._errHandler.sync(self)
            _la = self._input.LA(1)
        self.state = 137
        self._errHandler.sync(self)
        _la = self._input.LA(1)
        while (((_la & (~ 63)) == 0) and (((1 << _la) & ((((((1 << decafJavierParser.IF) | (1 << decafJavierParser.FOR)) | (1 << decafJavierParser.RETURN)) | (1 << decafJavierParser.BREAK)) | (1 << decafJavierParser.CALLOUT)) | (1 << decafJavierParser.ID))) != 0)):
            self.state = 134
            self.statement()
            self.state = 139
            self._errHandler.sync(self)
            _la = self._input.LA(1)
        self.state = 140
        self.match(decafJavierParser.RCURLY)
    except RecognitionException as re:
        localctx.exception = re
        self._errHandler.reportError(self, re)
        self._errHandler.recover(self, re)
    finally:
        self.exitRule()
    return localctx
def block(self):
    localctx = decafJavierParser.BlockContext(self, self._ctx, self.state)
    self.enterRule(localctx, 16, self.RULE_block)
    self._la = 0
    try:
        self.enterOuterAlt(localctx, 1)
        self.state = 127
        self.match(decafJavierParser.LCURLY)
        self.state = 131
        self._errHandler.sync(self)
        _la = self._input.LA(1)
        while ((_la == decafJavierParser.BOOLEAN) or (_la == decafJavierParser.INT)):
            self.state = 128
            self.vardeclr()
            self.state = 133
            self._errHandler.sync(self)
            _la = self._input.LA(1)
        self.state = 137
        self._errHandler.sync(self)
        _la = self._input.LA(1)
        while (((_la & (~ 63)) == 0) and (((1 << _la) & ((((((1 << decafJavierParser.IF) | (1 << decafJavierParser.FOR)) | (1 << decafJavierParser.RETURN)) | (1 << decafJavierParser.BREAK)) | (1 << decafJavierParser.CALLOUT)) | (1 << decafJavierParser.ID))) != 0)):
            self.state = 134
            self.statement()
            self.state = 139
            self._errHandler.sync(self)
            _la = self._input.LA(1)
        self.state = 140
        self.match(decafJavierParser.RCURLY)
    except RecognitionException as re:
        localctx.exception = re
        self._errHandler.reportError(self, re)
        self._errHandler.recover(self, re)
    finally:
        self.exitRule()
    return localctx