@Override
	public boolean equals(Object obj) {
		// Should normalize both values before comparing.
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Fretboard other = (Fretboard) obj;
		if (( null == strings ) && ( null == other.strings ))
			return true; // both null are same
		if (( null == strings ) || ( null == other.strings ))
			return false; // one null are different
		for ( int i = 0; i < strings.size(); i++ ) {
			if ( !strings.get(i).equals( other.strings.get( i ) ))
				return false;
		}
		return true;
	}