code: @Override
  	public final Iterator<Term> iterator() {
  		checkStatus(Status.INITIALIZED);
  		final Iterator<? extends Term> iterator = this.terms.values().iterator();
  		return new Iterator<Term>() {
  			@Override
  			public boolean hasNext() {
  				return iterator.hasNext();
  			}
  
  			@Override
  			public Term next() {
  				return iterator.next();
  			}
  
  			@Override
  			public void remove() {
  				throw new UnsupportedOperationException("Removal not supported");
  			}
  		};
  	}
docs: {@inheritDoc}