code: def _reload(self):
      env = self._env
      config = self._config.copy()
  
      if self.is_server:
          env_config_paths = ENV_CONFIG_PATHS
      else:
          env_config_paths = []
  
      env_config_path_override = ENV_CONFIG_PATH_OVERRIDE_VAR.get()
      if env_config_path_override:
          env_config_paths = [expanduser(env_config_path_override)]
  
      # merge configuration from root and other environment config paths
      if self.roots or env_config_paths:
          config = functools.reduce(
              lambda cfg, path: ConfigTree.merge_configs(
                  cfg,
                  self._read_recursive_for_env(
                      path, env, verbose=self._verbose
                  ),
                  copy_trees=True,
              ),
              self.roots + env_config_paths,
              config,
          )
  
      # merge configuration from local configuration paths
      if LOCAL_CONFIG_PATHS:
          config = functools.reduce(
              lambda cfg, path: ConfigTree.merge_configs(
                  cfg,
                  self._read_recursive(path, verbose=self._verbose),
                  copy_trees=True,
              ),
              LOCAL_CONFIG_PATHS,
              config,
          )
  
      local_config_files = LOCAL_CONFIG_FILES
      local_config_override = LOCAL_CONFIG_FILE_OVERRIDE_VAR.get()
      if local_config_override:
          local_config_files = [expanduser(local_config_override)]
  
      # merge configuration from local configuration files
      if local_config_files:
          config = functools.reduce(
              lambda cfg, file_path: ConfigTree.merge_configs(
                  cfg,
                  self._read_single_file(
                      file_path, verbose=self._verbose
                  ),
                  copy_trees=True,
              ),
              local_config_files,
              config,
          )
  
      if self._overrides_configs:
          config = functools.reduce(
              lambda cfg, override: ConfigTree.merge_configs(
                  cfg, override, copy_trees=True
              ),
              self._overrides_configs,
              config,
          )
  
      config["env"] = env
      return config
  
imports: from __future__ import print_function
  import functools
  import json
  import logging
  import os
  import sys
  import warnings
  from fnmatch import fnmatch
  from os.path import expanduser
  from typing import Any
  import six
  from pathlib2 import Path
  from pyparsing import ParseFatalException, ParseException, RecursiveGrammarException, ParseSyntaxException
  from six.moves.urllib.parse import urlparse
  from .bucket_config import S3BucketConfig
  from .defs import Environment, DEFAULT_CONFIG_FOLDER, LOCAL_CONFIG_PATHS, ENV_CONFIG_PATHS, LOCAL_CONFIG_FILES, LOCAL_CONFIG_FILE_OVERRIDE_VAR, ENV_CONFIG_PATH_OVERRIDE_VAR, CONFIG_VERBOSE
  from .defs import is_config_file
  from .entry import Entry, NotSet
  from .errors import ConfigurationError
  from .log import initialize, logger
  from .utils import get_options
  from ..utilities.pyhocon import ConfigTree, ConfigFactory
label_desc: Use image node_id 8 for calling the Config obj's underlying member method code with example usage: obj._reload() and returns: config