https://geekermag.com/sink-to-receive-asynchronous-callbacks-for-wmi-client-applications/