code: public static void fixMicroheterogenity(Structure bioJavaStruct) {
  		// Loop through the models
  		for (int i=0; i<bioJavaStruct.nrModels(); i++){
  			// Then the chains
  			List<Chain> chains = bioJavaStruct.getModel(i);
  			for (Chain c : chains) {
  				// Build a new list of groups
  				List<Group> outGroups = new ArrayList<>();
  				for (Group g : c.getAtomGroups()) {
  					List<Group> removeList = new ArrayList<>();
  					for (Group altLoc : g.getAltLocs()) {
  						// Check if they are not equal -> microheterogenity
  						if(! altLoc.getPDBName().equals(g.getPDBName())) {
  							// Now add this group to the main list
  							removeList.add(altLoc);
  						}
  					}
  					// Add this group
  					outGroups.add(g);
  					// Remove any microhet alt locs
  					g.getAltLocs().removeAll(removeList);
  					// Add these microhet alt locs
  					outGroups.addAll(removeList);
  				}
  				c.setAtomGroups(outGroups);
  			}
  		}
  	}
docs: This sets all microheterogeneous groups
  (previously alternate location groups) as separate groups.
  This is required because mmtf groups cannot have multiple HET codes.
  @param bioJavaStruct