code: func (g *Cloud) ReserveRegionAddress(addr *compute.Address, region string) error {
  	ctx, cancel := cloud.ContextWithCallTimeout()
  	defer cancel()
  
  	mc := newAddressMetricContext("reserve", region)
  	return mc.Observe(g.c.Addresses().Insert(ctx, meta.RegionalKey(addr.Name, region), addr))
  }
docs: // ReserveRegionAddress creates a region address