anchor.diff:      final deviceInfoSetPtr = SetupDiGetClassDevs(
           interfaceGuid, nullptr, NULL, DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);
       try {
  -      final interfacePaths =
  -          iterateInterfacePath(deviceInfoSetPtr, interfaceGuid);
  -      for (final path in interfacePaths) {
  -        print('hid interface $path');
  +      final devicePaths =
  +          devicePathsByInterface(deviceInfoSetPtr, interfaceGuid);
  +      for (final path in devicePaths) {
  +        print('hid device path $path');
         }
       } finally {
         SetupDiDestroyDeviceInfoList(deviceInfoSetPtr);
  
positive.code:   }
  }
  
  Iterable<String> iterateInterfacePath(
      Pointer deviceInfoSetPtr, Pointer<GUID> interfaceGuid) sync* {
    final requiredSizePtr = calloc<DWORD>();
    final deviceInterfaceDataPtr = calloc<SP_DEVICE_INTERFACE_DATA>()
  
negative.code:   });
  }
  
  Iterable<int> deviceIntancesByClass(
      Pointer deviceInfoSetPtr, Pointer<GUID> deviceGuid) sync* {
    final devInfoDataPtr = calloc<SP_DEVINFO_DATA>()
      ..ref.cbSize = sizeOf<SP_DEVINFO_DATA>();
  