// Probably incorrect - comparing Object[] arrays with Arrays.equals
@Override
        public boolean equals(Object o) {
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;
            SummaryDefinition that = (SummaryDefinition) o;
            if (isRegex != that.isRegex) return false;
            if (!name.equals(that.name)) return false;
            if (!function.equals(that.function)) return false;
            if (!target.equals(that.target)) return false;
            // Probably incorrect - comparing Object[] arrays with Arrays.equals
            return Arrays.equals(arguments, that.arguments);
        }
if (!function.equals(that.function)) return false;
if (!target.equals(that.target)) return false;
// Probably incorrect - comparing Object[] arrays with Arrays.equals
return Arrays.equals(arguments, that.arguments);
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
SummaryDefinition that = (SummaryDefinition) o;
if (isRegex != that.isRegex) return false;
if (!name.equals(that.name)) return false;
if (!function.equals(that.function)) return false;
if (!target.equals(that.target)) return false;
// Probably incorrect - comparing Object[] arrays with Arrays.equals
return Arrays.equals(arguments, that.arguments);
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
SummaryDefinition that = (SummaryDefinition) o;
if (isRegex != that.isRegex) return false;
if (!name.equals(that.name)) return false;
if (!function.equals(that.function)) return false;
if (!target.equals(that.target)) return false;
// Probably incorrect - comparing Object[] arrays with Arrays.equals
return Arrays.equals(arguments, that.arguments);
}