Why is didDiscoverPeripheral been called twice for one device during one scanForPeripheralsWithServices?