@Override
    public boolean equals(Object obj) {
        if (obj == null || getClass() != obj.getClass())
            return false;
        
        final Currency other = (Currency) obj;
        
        if (!this.code.equalsIgnoreCase(other.code)) return false;
        if (!this.name.equalsIgnoreCase(other.name)) return false;
        if (!this.symbol.equalsIgnoreCase(other.symbol)) return false;

        return true;
    }