use thiserror::Error;
#[derive(Debug, Error)]
pub enum Error {
#[error("address must begin with 0x")]
BadAddressPrefix,
#[error(transparent)]
TryFromSlice(#[from] std::array::TryFromSliceError),
#[cfg(feature = "ethereum")]
#[error(transparent)]
Ecdsa(#[from] k256::ecdsa::Error),
#[cfg(feature = "ethereum")]
#[error(transparent)]
Elliptic(#[from] k256::elliptic_curve::Error),
#[cfg(feature = "ethereum")]
#[error(transparent)]
Hex(#[from] hex::FromHexError),
}