ahhh, yeah. that's always a thing because if you have an endpoint that returns a Result, you really have something like `Result<Result<Result<...>>>`:

* One if the connection is bad (USB disconnected)
* One if the server said "what are you talking about"
* One if the endpoint worked, but returned an Err