@Override
    public ProxyConfig withProxyAddress(InetSocketAddress newProxyAddress) {
        requireNonNull(newProxyAddress, "newProxyAddress");
        return this.sourceAddress == null ? new HAProxyConfig(newProxyAddress)
                                          : new HAProxyConfig(newProxyAddress, this.sourceAddress);
    }
Represents the source address. When this value is {@code null}, it will be inferred
from either the {@link ServiceRequestContext} or the local connection address.
core/src/main/java/com/linecorp/armeria/client/proxy/HAProxyConfig.java