Extract SocketAddress and weight recursively until it reaches
an unweighted address instance.
Extract SocketAddress and weight recursively until it reaches
an unweighted address instance. Weights are multiplied.
If the input addr is an unweighted instance, return a weight of 1.0.