code: public void removeInvalids(JCas jcas) {
  
  		/*
  		 * Iterate over timexes and add invalids to HashSet 
  		 * (invalids cannot be removed directly since iterator is used)
  		 */
  		FSIterator iterTimex = jcas.getAnnotationIndex(Timex3.type).iterator();
  		HashSet<Timex3> hsTimexToRemove = new HashSet<Timex3>();
  		while (iterTimex.hasNext()) {
  			Timex3 timex = (Timex3) iterTimex.next();
  			if (timex.getTimexValue().equals("REMOVE")) {
  				hsTimexToRemove.add(timex);
  			}
  		}
  
  		// remove invalids, finally
  		for (Timex3 timex3 : hsTimexToRemove) {
  			timex3.removeFromIndexes();
  			this.timex_counter--;
  			Logger.printDetail(timex3.getTimexId()+" REMOVING PHASE: "+"found by:"+timex3.getFoundByRule()+" text:"+timex3.getCoveredText()+" value:"+timex3.getTimexValue());
  		}
  	}
docs: Postprocessing: Remove invalid timex expressions. These are already
  marked as invalid: timexValue().equals("REMOVE")
  
  @param jcas