public synchronized boolean equals(Object obj) {
        if (!(obj instanceof ArrayOfBatch)) return false;
        ArrayOfBatch other = (ArrayOfBatch) obj;
        if (obj == null) return false;
        if (this == obj) return true;
        if (__equalsCalc != null) {
            return (__equalsCalc == obj);
        }
        __equalsCalc = obj;
        boolean _equals;
        _equals = true && 
            ((this.batch==null && other.getBatch()==null) || 
             (this.batch!=null &&
              java.util.Arrays.equals(this.batch, other.getBatch())));
        __equalsCalc = null;
        return _equals;
    }