code: public void copyDocumentFields(PdfReader reader) throws DocumentException {
      	if (!reader.isOpenedWithFullPermissions())
              throw new IllegalArgumentException("PdfReader not opened with owner password");
          if (readers2intrefs.containsKey(reader)) {
              reader = new PdfReader(reader);
          }
          else {
              if (reader.isTampered())
                  throw new DocumentException("The document was reused.");
              reader.consolidateNamedDestinations();
              reader.setTampered(true);
          }
          reader.shuffleSubsetNames();
          readers2intrefs.put(reader, new IntHashtable());
          fields.add(reader.getAcroFields());
          updateCalculationOrder(reader);
      }
docs: This method feeds in the source document
  @param reader The PDF reader containing the source document
  @throws DocumentException