code: public static FsInfoSector create(Fat32BootSector bs) throws IOException {
          final int offset = offset(bs);
  
          if (offset == 0) throw new IOException(
                  "creating a FS info sector at offset 0 is strange");
          
          final FsInfoSector result =
                  new FsInfoSector(bs.getDevice(), offset(bs));
          
          result.init();
          result.write();
          return result;
      }
docs: Creates an new {@code FsInfoSector} where the specified
  {@code Fat32BootSector} indicates it should be.
  
  @param bs the boot sector specifying the FS info sector storage
  @return the FS info sector instance that was created
  @throws IOException on write error
  @see Fat32BootSector#getFsInfoSectorNr()