class DistinguishedName implements Name {

	public boolean equals(Object obj) {
		// A subclass with identical values should NOT be considered equal.
		// EqualsBuilder in commons-lang cannot handle subclasses correctly.
		if (obj == null || obj.getClass() != this.getClass()) {
			return false;
		}

		DistinguishedName name = (DistinguishedName) obj;

		// compare the lists
		return getNames().equals(name.getNames());
	}

	public  DistinguishedName();
	public  DistinguishedName(String path);
	public  DistinguishedName(List list);
	public  DistinguishedName(Name name);

}