class NotMatchesStatusCodeDecideRule extends MatchesStatusCodeDecideRule {

    /**
     * Sets the upper bound on the range of acceptable status codes.
     */
    public void setUpperBound(Integer statusCode) {

        kp.put("upperBound", statusCode);
    }

    /**
     * Returns the upper bound on the range of acceptable status codes.
     *
     * @return Integer Status code
     */
    public Integer getUpperBound() {

        Object value = kp.get("upperBound");

        if(value != null) {

            return((Integer) value);
        }

        return(null);
    }

    /**
     * Returns "true" if the provided CrawlURI has a fetch status that does not
     * fall within this instance's specified range.
     * 
     * @return true If the CrawlURI has a fetch status outside the specified
     *         range
     */
    @Override
    protected boolean evaluate(CrawlURI uri) {<FILL_FUNCTION_BODY>}
}


        // by default, we'll return false
        boolean value = false;

        int statusCode = uri.getFetchStatus();

        if (statusCode <= getLowerBound().intValue()
                || statusCode >= getUpperBound().intValue()) {

            value = true;
        }

        return (value);
    
<methods>public void <init>() ,public java.lang.Integer getLowerBound() ,public java.lang.Integer getUpperBound() ,public void setLowerBound(java.lang.Integer) ,public void setUpperBound(java.lang.Integer) <variables>public static final java.lang.Integer DEFAULT_LOWER_BOUND,public static final java.lang.Integer DEFAULT_UPPER_BOUND