code: public static AFPChain filterDuplicateAFPs(AFPChain afpChain, CECalculator ceCalc, Atom[] ca1, Atom[] ca2duplicated) throws StructureException {
  		return filterDuplicateAFPs(afpChain, ceCalc, ca1, ca2duplicated, null);
  	}
docs: Takes as input an AFPChain where ca2 has been artificially duplicated.
  This raises the possibility that some residues of ca2 will appear in
  multiple AFPs. This method filters out duplicates and makes sure that
  all AFPs are numbered relative to the original ca2.
  
  <p>The current version chooses a CP site such that the length of the
  alignment is maximized.
  
  <p>This method does <i>not</i> update scores to reflect the filtered alignment.
  It <i>does</i> update the RMSD and superposition.
  
  @param afpChain The alignment between ca1 and ca2-ca2. Blindly assumes
  that ca2 has been duplicated.
  @return A new AFPChain consisting of ca1 to ca2, with each residue in
  at most 1 AFP.
  @throws StructureException