public void replace(
     DocumentFilter.FilterBypass fb, int offs, int length, String str, AttributeSet a)
     throws BadLocationException {
   if (isValidPostiveNumber(false, fb, offs, str, length)) {
     fb.replace(offs, length, str, a);
     doValueUpdate(fb);
   }
 } // End of replace
 /** Overriden to unconditionally allow the replace if ignoreDocumentMutate is true. */
 void replace(
     DocumentFilter.FilterBypass fb, int offset, int length, String text, AttributeSet attrs)
     throws BadLocationException {
   if (ignoreDocumentMutate) {
     fb.replace(offset, length, text, attrs);
     return;
   }
   super.replace(fb, offset, length, text, attrs);
 }