code: def env_config(config):
      
  
      def load_from_env(value, path):
          var_name = CONFIG_SEP.join([CONFIG_PREFIX] + list(map(lambda s: s.upper(), path)))
  
          return os.environ.get(var_name, value)
  
      return map_leafs(load_from_env, config)
docs: Return a new configuration with the values found in the environment.
  
      The function recursively iterates over the config, checking if there is
      a matching env variable. If an env variable is found, the func updates
      the configuration with that value.
  
      The name of the env variable is built combining a prefix (``BIGCHAINDB``)
      with the path to the value. If the ``config`` in input is:
      ``{'database': {'host': 'localhost'}}``
      this function will try to read the env variable ``BIGCHAINDB_DATABASE_HOST``.