code: func (ble *BLE) DiscoverServices(deviceUuid xpc.UUID, uuids []xpc.UUID) {
  	sUuid := deviceUuid.String()
  	msg := 44
  	if ble.utsname.Release >= "18." {
  		msg = 72
  	}
  	if p, ok := ble.peripherals[sUuid]; ok {
  		sUuids := make([]string, len(uuids))
  		for i, uuid := range uuids {
  			sUuids[i] = uuid.String() // uuids may be a list of []byte (2 bytes)
  		}
  		ble.sendCBMsg(msg, xpc.Dict{"kCBMsgArgDeviceUUID": p.Uuid, "kCBMsgArgUUIDs": sUuids})
  	} else {
  		log.Println("no peripheral", deviceUuid)
  	}
  }
docs: // discover services