@Override
	public boolean equals(Object other) {
		if (other instanceof KeyValue) {
			KeyValue otherPair = (KeyValue) other;
			return ((this.key == otherPair.key || (this.key != null && otherPair.key != null && this.key.equals(otherPair.key))) && (this.value == otherPair.value || (this.value != null && otherPair.value != null && this.value.equals(otherPair.value))));
		}
		return false;
	}