code: private void fillBlock(int block, /*UChar32*/ int start, /*UChar32*/ int limit,
                int value, int initialValue, boolean overwrite) {
          int i;
          int pLimit = block+limit;
          if(overwrite) {
              for (i=block+start; i<pLimit; i++) {
                  data[i] = value;
              }
          } else {
              for (i=block+start; i<pLimit; i++) {
                  if(data[i]==initialValue) {
                      data[i]=value;
                  }
              }
          }
      }
docs: initialValue is ignored if overwrite=TRUE
  @hide draft / provisional / internal are hidden on Android