int blockValue = Math.min(first,
int blockValue = Math.max(first,
    protected void refreshComponents() {        // lower bound        clickables[BACKWARD].setEnabled(getValue() > getMinimum());        clickables[FIRST].setEnabled(clickables[BACKWARD].isEnabled());        clickables[BACKWARD_BLOCK].setEnabled(clickables[BACKWARD].isEnabled());        if ( clickables[BACKWARD].isEnabled() ) {            clickables[BACKWARD].setEvent(getEventParameter(getValue()-1));            int first = getMinimum();            clickables[FIRST].setEvent(getEventParameter(first));            int blockValue = Math.min(first,                                      getValue()-getBlockIncrement());            clickables[BACKWARD_BLOCK].setEvent(getEventParameter(blockValue));        }        // upper bound: maximum - extent        clickables[FORWARD].setEnabled(getValue() < getMaximum()-getExtent());        clickables[LAST].setEnabled(clickables[FORWARD].isEnabled());        clickables[FORWARD_BLOCK].setEnabled(clickables[FORWARD].isEnabled());        if ( clickables[FORWARD].isEnabled() ) {            clickables[FORWARD].setEvent(getEventParameter(getValue()+1));            int last = getMaximum()-getExtent();            clickables[LAST].setEvent(getEventParameter(last));            int blockValue = Math.min(last,                                      getValue()+getBlockIncrement());            clickables[FORWARD_BLOCK].setEvent(getEventParameter(blockValue));        }    }