class EdgesMergeStrategyWrapper {
    private final EdgeMergeStrategy instance;

    public EdgesMergeStrategyWrapper(EdgeMergeStrategy instance) {
        this.instance = instance;
    }

    public EdgeMergeStrategy getInstance() {
        return instance;
    }

    @Override
    public int hashCode() {
        int hash = 7;
        hash = 31 * hash + Objects.hashCode(this.instance);
        return hash;
    }

    @Override
    public boolean equals(Object obj) {<FILL_FUNCTION_BODY>}

    @Override
    public String toString() {
        return NbBundle.getMessage(ReportPanel.class, "ReportPanel.mergeStrategy." + instance.name().toLowerCase(
            Locale.US));
    }
}

        if (this == obj) {
            return true;
        }
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final EdgesMergeStrategyWrapper other = (EdgesMergeStrategyWrapper) obj;
        return this.instance == other.instance;
    
<no_super_class>