pub fn new() -> Self {
        let client = Client::builder()
            // Timeout for establishing connection
            .connect_timeout(Self::connect_timeout())
            // Total timeout for the request
            .timeout(Self::request_timeout())
            .build()
            .expect("Failed to create a reqwest client for SolcVersionsFetcher");

        let solc_long_versions: HashMap<String, String> = SOLC_VERSIONS
            .iter()
            .map(|(s, l)| (s.to_string(), l.to_string()))
            .collect();

        Self {
            http_client: client,
            solc_long_versions,
            last_update: None,
        }
    }
Creates a new instance of SolcVersionsFetcher. Populates the default list of solc versions.
core/lib/contract_verifier/src/etherscan/solc_versions_fetcher.rs