@Override
    public int hashCode() {
        int result = host != null ? host.hashCode() : 0;
        result = 31 * result + port;
        result = 31 * result + (scheme != null ? scheme.hashCode() : 0);
        result = 31 * result + (username != null ? username.hashCode() : 0);
        result = 31 * result + (password != null ? password.hashCode() : 0);
        return result;
    }
@Test
    void testEqualsHashCode() {
        var proxy0 = new Proxy("::1", 1080);
        var proxy1 = new Proxy("::1", 1080);
        assertEquals(proxy0, proxy1);
        assertEquals(proxy0.hashCode(), proxy1.hashCode());
    }