@Override
    public boolean equals(Object obj) {
        if (this == obj) {
            return true;
        }
        if (obj == null || getClass() != obj.getClass()) {
            return false;
        }
        Subscription o = (Subscription) obj;
        return (edition == null ? o.edition == null : edition.equals(o.edition)) &&
                (type == null ? o.type == null : type.equals(o.type));
    }