class VersionMessage extends Message {

    @Override
    public boolean equals(Object o) {
        if (!(o instanceof VersionMessage)) return false;
        VersionMessage other = (VersionMessage) o;
        return other.bestHeight == bestHeight &&
                other.clientVersion == clientVersion &&
                other.localServices == localServices &&
                other.time == time &&
                other.subVer.equals(subVer) &&
                other.myAddr.equals(myAddr) &&
                other.theirAddr.equals(theirAddr) &&
                other.relayTxesBeforeFilter == relayTxesBeforeFilter;
    }

    public  VersionMessage(NetworkParameters params, byte[] msg);
    public  VersionMessage(NetworkParameters params, int newBestHeight);
    public  VersionMessage(NetworkParameters params, int newBestHeight, boolean relayTxesBeforeFilter);

}