code: async function getGasAndPriceRates (config={}) {
  
    const defaultGasPrice = 5
  
    // Global to this file...
    currency = config.currency || 'eur'
    ethPrice = config.ethPrice || null
    gasPrice = config.gasPrice || null
    onlyCalledMethods = (config.onlyCalledMethods === false) ? false : true;
    outputFile = config.outputFile || null
    rst = config.rst || false
    rstTitle = config.rstTitle || '';
    colors.enabled = !config.noColors || false
  
    const currencyPath = `https://api.coinmarketcap.com/v1/ticker/ethereum/?convert=${currency.toUpperCase()}`
    const currencyKey = `price_${currency.toLowerCase()}`
    const gasPricePath = `https://ethgasstation.info/json/ethgasAPI.json`
  
    // Currency market data: coinmarketcap
    if (!ethPrice) {
      try {
        let response = await request.get(currencyPath)
        response = JSON.parse(response)
        ethPrice = response[0][currencyKey]
      } catch (error) {
        ethPrice = null
      }
    }
  
    // Gas price data: blockcypher
    if (!gasPrice) {
      try {
        let response = await request.get(gasPricePath)
        response = JSON.parse(response)
        gasPrice = Math.round(response.safeLow / 10);
      } catch (error) {
        gasPrice = defaultGasPrice
      }
    }
  }
docs: Async method that fetches gasPrices from blockcypher.com (default to the lowest safe
  gas price) and current market value of eth in currency specified by the config from
  coinmarketcap (defaults to euros).
  @return {Object}
  @example
  const {
  currency, // 'eur'
  gasPrice, // '5000000000'
  ethPrice, // '212.02'
  } = await getGasAndPriceRates()