public final RefsContext refs() throws RecognitionException {
		RefsContext _localctx = new RefsContext(_ctx, getState());
		enterRule(_localctx, 66, RULE_refs);
		int _la;
		try {
			setState(552);
			switch (_input.LA(1)) {
			case CASCADE:
			case RESTRICT:
				enterOuterAlt(_localctx, 1);
				{
				{
				setState(544);
				_la = _input.LA(1);
				if ( !(_la==CASCADE || _la==RESTRICT) ) {
				_errHandler.recoverInline(this);
				}
				consume();
				setState(546);
				_la = _input.LA(1);
				if (_la==DEFERRABLE) {
					{
					setState(545); match(DEFERRABLE);
					}
				}

				}
				}
				break;
			case SET:
				enterOuterAlt(_localctx, 2);
				{
				{
				setState(548); match(SET);
				setState(549); match(NULL);
				}
				}
				break;
			case NO:
				enterOuterAlt(_localctx, 3);
				{
				{
				setState(550); match(NO);
				setState(551); match(ACTION);
				}
				}
				break;
			default:
				throw new NoViableAltException(this);
			}
		}
		catch (RecognitionException re) {
			_localctx.exception = re;
			_errHandler.reportError(this, re);
			_errHandler.recover(this, re);
		}
		finally {
			exitRule();
		}
		return _localctx;
	}