@Override
    public int hashCode() {
        int prime = 31;
        int prime1 = 37;
        int prime2 = 41;
        int prime3 = 43;
        
        int rId = recordId;
        int nIId = imageId;
        int tFId = fieldId;
        int tRNum = rowNumber;
        int tVal;
        if (rId == 0) {
            rId = prime * prime3;
        }
        if (nIId == 0) {
            nIId = prime;
        }
        if (tFId == 0) {
            tFId = prime1;
        }
        if (tRNum == 0) {
            tRNum = prime2;
        }
        if (value == null) {
            tVal = prime3;
        }
        else {
            tVal = value.length();
        }
        int hash = rId + nIId + tFId + tRNum + tVal;
        
        return hash;
    }