class IspNodeInfo {

  @Override
  public boolean equals(@Nullable Object o) {
    if (this == o) {
      return true;
    }
    if (!(o instanceof IspNodeInfo)) {
      return false;
    }
    IspNodeInfo that = (IspNodeInfo) o;
    return _asn == that._asn
        && _name.equals(that._name)
        && _additionalAnnouncement.equals(that._additionalAnnouncement)
        && Objects.equals(_trafficFiltering, that._trafficFiltering);
  }

  public  IspNodeInfo(long asn, String name);
  public  IspNodeInfo(long asn, String name, List<IspAnnouncement> additionalAnnouncements);
  public  IspNodeInfo(
      long asn,
      String name,
      List<IspAnnouncement> additionalAnnouncements,
      @Nullable IspTrafficFiltering trafficFiltering);

}