pub async fn parse_function_args<T: Transport + Clone, P: Provider<T, AnyNetwork>>(
sig: &str,
args: Vec<String>,
to: Option<Address>,
chain: Chain,
provider: &P,
etherscan_api_key: Option<&str>,
) -> Result<(Vec<u8>, Option<Function>)>