pub trait Context { type Provider; // Required method fn provider(&self, contract: Address, abi: &[u8]) -> Self::Provider; }