code: public static Fat read(BootSector bs, int fatNr)
              throws IOException, IllegalArgumentException {
          
          if (fatNr > bs.getNrFats()) {
              throw new IllegalArgumentException(
                      "boot sector says there are only " + bs.getNrFats() +
                      " FATs when reading FAT #" + fatNr);
          }
          
          final long fatOffset = bs.getFatOffset(fatNr);
          final Fat result = new Fat(bs, fatOffset);
          result.read();
          return result;
      }
docs: Reads a {@code Fat} as specified by a {@code BootSector}.
  
  @param bs the boot sector specifying the {@code Fat} layout
  @param fatNr the number of the {@code Fat} to read
  @return the {@code Fat} that was read
  @throws IOException on read error
  @throws IllegalArgumentException if {@code fatNr} is greater than
  {@link BootSector#getNrFats()}