Hi, This may be a pretty simple (and not particularly embedded-related) question: I have a struct that is generic over `embedded_hal::spi::SpiDevice` and `embedded_hal::digital::InputPin`. Both of these traits also imlement a trait `ErrorType`, but they are not related. What would be the best way to return one or the other error? My first thought was something like: ``` pub enum ErrorKind where S: SpiDevice, P: InputPin{ SpiError(S::Error), PinError(P::Error), Other, } ``` but that makes it impossible to implement `From<>`