public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		
		NullValues nl = (NullValues)obj;
		if (!nullValueStrategy.equalsIgnoreCase(nl.getNullValueStrategy())) { return false; }
		if (nextCode != nl.getNextCode()) { return false; }
		if (!nullValue2SymbolMap.equals(nl.nullValue2SymbolMap)) { return false; }
		if (!nullValue2CodeMap.equals(nl.nullValue2CodeMap)) { return false; }	
		if (!code2SymbolMap.equals(nl.code2SymbolMap)) { return false; }
		if (!symbol2CodeMap.equals(nl.symbol2CodeMap)) { return false; }
		return true;
	}